-
1.
+91 -9Beyler bayanlar sözlükte yazılımcıyım diye dolaşan ama yazılımın y'sinden haberi olmayan insanlardan artık sıkılmadınız mı? Kısaca kendimi anlatayım. En az 7 yıldır bu işi profesyonel olarak yapıyorum. Birçok firma ve kişi ile çalıştım. Bu kişiler arasında ünlü sanatçılar ve menajerlerde vardı. Kendimi daha fazla anlatmadan sizlere bu işin a'sından z'sine yeri geldiğinde temel, yeri geldiğinde derinlemesine konulardan bahsedeceğim. Öncelikle benimle beraber kodları yazıp düzenlemeniz, kendi çıktılarınızı görmeniz açısından iyi olacaktır. Bunu neden mi yapıyorum? Tecrübelerimi paylaşmak ve bu tecrübelerin başkalarının hayatını kolaylaştırması için.
Kullanılacak programlar:
1) Dreamweaver
illa ki dreamweaver olacak diye bir şartımız yok. Kod yazabileceğiniz onlarca ide mevcut. Sublime text, php storm, notepad++ vs.. Ben PHP Storm kullanıyorum.
2) Wamp Server / Mamp Servers / Xamp Server
Bunların hepsi aynı işlevi görüyor. Sadece işletim sistemine göre değişiklik olabiliyor. Ben Apple Macbook Pro bilgisayarımda MAMP kullanıyorum. (Bu local sunucuların işlevi ilerleyen günlerde php kod yazmaya başladığımızda kodlarımızı rahatlıkla çalıştırabilmek içindir.)
Bu programları bilgisayarınıza kurduysanız ve bu işe gerçekten başlamak istiyorsanız gerçekten sabrınız varsa ve beyninizi yakmaya hazırsanız ufaktan başlayalım mı ? -
2.
+171. Gün / 1. DersTümünü Göster
Öncelikle beyler bayanlar bir web sitesi yapabilmemiz için bu işi severek yapmamız gerek. Bu iş matematik gibidir seversen uğraşır yaparsın. illa ki tüm formülleri bilmen gerekmez. Mantığını bimen yeterlidir. Sevmezsen de iteklemeyle bir yere varamazsın. Bu başlığa gelipte bu derslere katılacak olan arkadaşlarım bu işi severek yapacaklarına inanıyorum.
Bir websitesi genel olarak üç aşamadan oluşur. Arayüz Tasarımı / Arayüz Kodlaması / Yazılım
Birincisi tasarımdır. Photoshop, Illustrator, Fireworks gibi programlar ile sitenin arayüz tasarımı yapılır. Bu tasarımlar yapılırken eskiden sabit bir değer ile yapılırdı örn: max genişlik 960px gibi. Fakat günümüzde mobil kullanıcıların sayısı bir hayli fazla olduğundan dolayı sabit genişlikler yerine dinamik her ekrana ve her cihaza uygun tasarımlar yapılması gereklidir. Böyle esnek tasarımlara responsive tasarım yani duyarlı tasarım denmektedir. Responsive tasarıma çok benzer adaptive tasarım kavramı da vardır. Fakat işin detayına ilerleyen günlerde ineceğimiz için şimdilik bu ikisi arasındaki farkı anlatmaya gerek yok.
ikincisi arayüz kodlaması. Arayüz tasarımı tamamlanan web sitesinin artık tarayıcıların anlayabileceği şekilde kodlanması gerekli. Bu kodlamalarda genel olarak üç aşamadır. Html / Css / Javascript.
--Html kodları bir sitenin iskeletidir. Yani şablonu burada belirleriz. Bir ağacın dallarını ve alt dallarını düşünün. Tüm iskelet yapısı burada belirlenir. Sayfada neler görüneceğinin temelini burada atarız. Bir resim göstermek istiyorsak resim kodunu yazarız.
--Css ise bu temel iskeletimizin stillerini ve özelliklerini belirlememize yarar. iskelette oluşturduğumuz şablonların içeriklerin renklerini boyutlarını hizalamalarını aklınıza gelebilecek tüm detaylı özellikleri burada yapabiliriz. Şablonda eklediğimiz resmin büyüklüğünü kenarlık özelliklerini hizalamalarını burada yapıyoruz.
--Javascript ise tarayıcı ile kullanıcı arasında bir köprü görevi görür. Kullanıcının yaptığı işlemleri biz burada izler ona göre sonuçlar sunarız. Bir butona tıkladığında bir işlem yaptırmak istiyorsak burada yapabiliriz. Veya sitelerde denk gelmişsinizdir form doldururken bazı alanlar zorunludur uyarısı verir. işte bu uyarıları javascript ile halledebiliriz. Biz ileride yapacağımız projelerde javascript'e ait jquery kütüphanesini kullanacağız.
Üçünüsü ise yazılımdır. Buraya kadar olan herşey kullanıcının görebildiği yerlerle ilgiliydi. Bundan sonrası ise işin arkaplanına iniyoruz. Yazılım aşamasında verilerle ilgileniyoruz. Veritabanlarındaki verileri alıp işliyoruz. Aklınıza gelebilecek tüm detaylı ve gizli işler burada yapılır. Örneğin şifresini unutan bir üye şifremi unuttum butonuna bastığında o kullanıcıya bir eposta gider. Ve şifresini sıfırlaması için bir link gönderilir. Fakat bu link oluşturulurken arkaplanda saniyeler içerisinde bir yığın kod çalışır ve bu kullanıcı tarafından asla görülemez. Php, asp gibi çeşitleri vardır. Veritabanı için ise mysql, mssql kullanılır. Biz ileride projelerde php ve mysql kullanacağız.
// Bu yazdığım ders hakkında sorularınız varsa altına yazabilirsiniz. -
-
1.
+2süper gidiyorsun panpa
-
2.
+3Talep gelirse devam edeceğim. Sonuçta emeklerimiz boşa gitmesin.
-
3.
0Helal olsun başkan
-
4.
0Yaz Panpa
diğerleri 2 -
1.
-
3.
+121. Gün / 2. DersTümünü Göster
Beyler bayanlar kısa tanımlardan sonra ufaktan kod yazmaya başlayalım. Öncelikle öyle şu etiket şu işe yarar falan demeyeceğim. internet önünüzde. Hangi etiket ne işe yarıyor çok açık bulabilirsiniz. Bulamazsanız da ben her daim destek çıkarım. Olaya örneklerle devam edeceğiz. Bunun için bir site tasarlayacağız. Daha doğrusu tasarım kısmına müdahale etmeden benim daha önceden hazırladığım bir tasarımı koda dökeceğiz. Tasarımı da anlatmaya kalkarsam içinden çıkamayız. Kaldı ki tasarım kısmı herkesin yapabileceği bir şey değil hayal gücüne ve zevke bağlı bir şey. Yazılım ise mantık olayı. Neyse konuyu dağıtmadan olaya giriyoruz.
ilk olarak işin temeli iyi bir klasör yapılandırması. Neyin nerede olacağını daha sonradan çok rahat bulabilmeniz ve dosyalar klasörlerin arasında boğuşmamanız için bu şart. Benim yapım şu şekilde.
+assets
+++css
---reset.css
---style.css
+++img
+++js
---jquery-2.1.4.min.js
+inc
---config.php
---session.php
ilk olarak reset.css dosyamızı oluşturalım. reset.css dosyamız bizim ne işimize yarar diyecek olursanız şöyle cevap vereyim. Bu dosyanın adı önemli değil fakat kodları bizim bazı gereksiz boşluklarımızı kenarlıklarımızı veya birçok özellikleri tüm tarayıcılarda uygun olacak şekilde stabilize etmeye yarıyor. Bizim bir başka yazılımcı arkadaşımız Eric Meyer'in oluşturmuş olduğu reset.css dosyasını kullanacağız. Linki: http://meyerweb.com/eric/tools/css/reset/
Linkten bakmak istemiyorsanız aşağıdaki kodları reset.css dosyasının içerisine yazın.
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
// Bu ders hakkında sorularınız varsa alta yazabilirsiniz. -
-
1.
0Reset.css = responsive diyebilir miyiz?
-
-
1.
+2yok hayır reset.css = responsive diyemeyiz. reset.css dosyamızdaki kodlar bazı formların veya etiketlerin tüm tarayıcılarda standart haline getirilmesine yarar. mesela bir input diyelim yani veri girdiğimiz alan bu chrome'de ayrı görünürken explorer'da ayrı görünebilir. bunları en aza indirmek veya tamamen standart haline getirmeye yarayan kodlardır. responsive ise sitenin ekran çözünürlüklerine göre büyüyüp küçülmesi diyebiliriz basitçe. ikisi ayrı şeyler.
-
2.
0Saolasin
-
1.
-
2.
0ABi Bi ŞEKiLDE SANA ULAŞMAM LAZIM MESAJ ATAMIYORUM Bi ŞEKiLDE iLETiŞiM KURALiM
-
3.
0ABi Bi ŞEKiLDE SANA ULAŞMAM LAZIM MESAJ ATAMIYORUM Bi ŞEKiLDE iLETiŞiM KURALiM
-
-
1.
0buyur kardeşim buradan yaz.
-
1.
-
4.
0Rez amk
diğerleri 2 -
1.
-
4.
+5Yarın index. html sayfamızı oluşturup ardından css'lerini yazıp bir tasarım ortaya çıkartacağız beyler bayanlar takipte kalın. Bu eğitim yarıda kesilmeyecek. Sözüm sözdür. Kalın sağlıcakla.
-
5.
+3Takip eden ve istekli arkadaşlarım hepinize teşekkür ediyorum. Bu başlık boş zamanım oldukça devam edecek. Dersleri de devam ettireceğim. Hakkımda atıp tutanlara bir şey demiyorum. Kendileri daha iyilerse buyursunlar piste alalım. Geceden beridir bir projeyle ilgileniyorum inanın kafam milyon şu anda. Ama bugün içerisinde akşamüstü veya akşam gibi ders yayınlamayı düşünüyorum. Beklemede kalın.
-
6.
+32. Gün / 1. DersTümünü Göster
Beyler bayanlar dün reset.css dosyasını oluşturmuştuk. Kısaca ne işe yaradığı falan bahsetmiştim. Artık bugün yavaştan ekranda birşeyler göstermeye başlayacağız. Öncelikle index. html sayfamızı oluşturuyoruz.
<!doctype html>
<html lang="tr-TR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Sitemizin Başlığı</title>
<meta name="description" content="Sitemizin Kısa Açıklaması">
<--- JS -->
<script src="assets/js/jquery-2.1.4.min.js"></script>
<--- CSS -->
<link rel="stylesheet" href="assets/css/reset.css">
<link rel="stylesheet" href="assets/css/style.css">
</head>
<body>
</body>
</html>
Şimdi çok kısa kodlar hakkında bilgi vermek istiyorum.
Öncelikle sitemizi <!doctype html> koduyla başlatarak HTML5 olarak giriş yapıyoruz.
Ardından alt satırındaki kodumuz ise sitenin tarayıcılar tarafından anlayacağı dili yazıyoruz. Bu tr-TR yazmazsak ne olur diyenler olacaktır. Bunu yazmamızdaki amacımız sitenin içindeki metinlerin dilinin ne olduğunu arama motorlarının anlamasını sağlamak. He yazmazsakta anlarlar orası ayrı ama şöyle bir durum olabilir. Birkaç alıntı yazarak ingilizce cümle yazdınız ama sitenin geneli türkçe. Şimdi biz bunu buraya yazmazsak google arama motoru sitemizi ziyaret ettiğinde sitede birden fazla dil olduğunu görür ve sitenin dilini çevirmeyi önerebilir. Bu da kullanıcılar açısından gereksiz olabilir. Aynı zamanda seo açısından da eksi puan almanıza sebep olur. Yani işin özü sitemiz Türkçe ise tr-TR yazmakta her daim fayda var.
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
Yukarıdaki kod ne işe mi yarıyor? Bu kodumuz responsive ile alakalı. Şöyle anlatayım. Telefondan bir siteye girdiğinizde parmak hareketlerinizle siteyi zoom in zoom out yapabiliyorsunuz. Ama bazı siteler buna izin vermiyor. Ne gibi yararı veya zararı var konusuna gelirsek. Ben şahsi fikrimi söyleyeyim bence kullanmak faydalı. Çünkü kullanıcılar sitede yukarı aşağı parmak hareketleriyle gezerken vs yanlışlıkla büyütüp küçültmelerine engel oluyor. Bunun yanında eğer sitede içerikler responsive olarak güzel ayarlanmadıysa zoom yapıldığında bozulma ihtimali doğuyor ve bu göz hoş görünmüyor. Kısacası kullanın.
<script src="assets/js/jquery-2.1.4.min.js"></script> kodu ile sayfamıza jquery kütüphanesini dahil ediyoruz. Etmezsekte olur. Site sorunsuz çalışır. E neden ekledin kardeşim o zaman derseniz. Tabi ki keyfimden eklemedim. ileride proje içerisinde jquery kodları kullanacağım. Bu kodların yorumlanabilmesi ve çalışması için bu kütüphaneyi sayfama dahil etmem gerekiyor. jQuery kullanmam ben diyenler bu satırı silebilirler.
<link rel="stylesheet" href="assets/css/reset.css">
<link rel="stylesheet" href="assets/css/style.css">
Burada ise reset.css ve style.css dosyalarımızı sayfamıza dahil ettik.
Tüm bunları yaptıktan sonra kodlarımızı <body> </body> arasına yazabiliriz.
// Sorularınızı alta yazabilirsiniz. -
7.
+2Geri dönüş alalım beyler. Herkes rez almış eyvallah sağolun varolun ama bu zamana kadar anlattıklarımı gerçekten anlayan kimler var? Ve verdiğim hiyerarşiyi oluşturup kodları yazanlar kimler. Yani sadece rez alıp ilerde bakarım ile olacaksa burada dersleri keseyim. Benimle adım adım kendinizi geliştirecekseniz ben devam ederim sıkıntı yok benim için. Geri dönüşlerinizi bekliyorum. Kalın sağlıcakla.
-
-
1.
0Ben yaptım pnp sen devam et ama şu assets ne demek onu söylesen güzel olur.
-
2.
+1js, css, grafik gibi dosyaları klasörlendirdiğin dizine verilen genel bir ad işte sen kısaca zerzevatlar diyebilirsin.
-
3.
+1aynen öyle. sadece standart olması açısından ingilizce kullanıyorum yoksa sen istersen oraya kendi adını bile yazabilirsin sıkıntı yok. sadece türkçe karakter kullanma yeterli.
diğerleri 1 -
1.
-
8.
+2Herkesten kısaca bir görüş bekliyorum. ilerleyen günlerde yarından itibaren bir proje üzerinde çalışacağız. Bu proje ne üzerine olmasını istersiniz. Herkes bir fikir versin en çok tutulan fikir üzerinden yolumuzu çizelim. Eğer yeterli şekilde dönüş gelmezse aklımda birkaç fikir var onları uygulayacağım. Tabi çok zor olmaması gerekiyor. Çünkü sonuç olarak bu bir ders. Çok kapsamlı bir proje olursa bu işi bilmeyenler yarıda kapatır sayfayı giderler. Yavaş yavaş zorlaştıracağız. Fikirleri bekliyorum.
Kalın sağlıcakla. -
-
1.
0Hocam bir meslek liseli olarak okulda hiç bişey anlamama rağmen senden anladım çok iyi anlatıyorsunuz ama video halindede anlatirsaniz daha iyi anlarız hocam
sağlıcakla
-
1.
-
9.
+53. Gün / 1. DersTümünü Göster
Merhaba beyler bayanlar bugün artık anasayfamızda birşeyler göstermeye başlayacağız. Blog veya video çekmemi isteyenler var aranızda yakın zamanda blog açıp burada sizinle paylaşacağım. Şimdi herkes index. html sayfasını oluştursun ardından altta yazılan kodları <body> </body> tagları arasına yazsın. Kısaca kodların ne işe yaradığını anlatacağım.
index. html kodları
<div id="container">
<div id="header">
<h1>LOGO</h1>
<ul>
<li><a href="index. html">Anasayfa</a></li>
<li><a href="hakkimizda. html">Hakkımızda</a></li>
<li><a href="iletisim. html">iletişim</a></li>
</ul>
</div>
</div>
container adlı divimiz bizim en genel divimiz oluyor. bunu yapmamdaki amaç tüm içeriği kapsayan bir yapı oluşturmak için. daha sonra ilerleyen zamanlarda proje içeriği karmaşıklaştıkça hizalama sorunları olmasın diye böyle bir kapsayıcı div yerleştiriyorum.
header adlı divimiz ise genelde sitelerin üst kısmında bulunan yer için adlandırılır. bunun içerisinde menü logo varsa arama kutucuğu hatta yeri geldiği zaman slider (resim geçişi) bulunabilir. ben çok kapsamlı birşey yapmayacağım. sadece basit bir site yapımından bahsedeceğim için şablonu basit hazırlıyorum.
header içerisine aslında <img> ile bir logo ekleyebilirdim ama ekstra örnek logo bulmak için uğraşmadım oraya hemen bir <h1> tagı açıp logo yazdım. tabi siz o h1 kaldırıp yerine <img src="assets/img/logo.png" alt="logo"> olarak değiştirebilirsiniz.
header içerisinde sağda bulunan bir de menümüz var. bu menüyü ul>li>a şeklinde yaptım ki ileride menü ekleme çıkarma olayı olduğunda dinamik bir yapımız olsun.
en son ise bir clear classımız var. bunun ne işe yaradığına gelecek olursak. yan yana div eklediğimizde daha sonra alta div eklemek istediğimzde karışıklık olmasın diye hizalamaları düzelten bir yapısı vardır. clear adını siz istediğiniz gibi yaparsınız fakat standartı bu şekildedir. style.css dosyamızda bir .clear tanımladım ve içerisine float:both; dedim. şimdi bu ne işe yarıyor diyeceksiniz bunu style.css kodlarını yazdıktan sonra açıklayacağım.
aynı clear classını </ul> bitiminden sonra da yaptım ki bunu style.css kodlarını incelediğinizde anlayacaksınız umarım.
bu arada aklıma gelmişken ufak bir farktan size bahsetmek istiyorum. id ile class farkı nedir derseniz. id sayfa içerisinde bir tane bulunmak zorundadır. he birden fazla da bulunabilir fakat standarta uymaz. class ise birden fazla yerde kullanılmak istendiğinde kullanılır. mesela yukarıdaki clear classımızı id şeklinde yapsaydım olmazdı. olurdu ama standartlardan uzaklaşırdık. umarım farkı kısaca anlatabilmişimdir. Tüm bu yapıyı inceleyin istiyorum. Kısaca html kodları yazıp bir şablon ayarladık. Tabi ki devamı gelecek. Bir sonraki derste style.css kodlarını sizinle paylaşacağım.
// Soruları alta yazabilirsiniz. -
10.
+2Beyler atılan mesajlar için sağolun var olun. Genel bir açıklama yapmak istiyorum ve bu durumdan sıkıldım. Başlığı açtım günden beri sayısız mesaj aldım ve mesajların birçoğu tercih döneminde olan liseliler. Hepsi yok parası iyi mi yapabilir miyim nasıl iyi mi falan filan derdinde ? Bakın beyler sizden yaşça büyüyüğüm size nasihat verecek değilim. Ama az mantıklı sorular sorun amk. Yazılım okumak istiyorum yapabilir miyim ? diye soru mu olur yarak kafalı. Ben nerden bileyim. Birisi gelmiş elinde listeyle şu şu şu bölümlerden birini seçeceğim sence hangisi. E mal ben nerden bileyim. Ben karşıdan bakınca rehber öğretmen gibi mi görünüyorum size.
Az mantıklı olun olum. Sen üniversiteden çıkınca para havuzuna mı düşeceğini sanıyorsun liseli. Yarak kürek muhabbet ediyorsunuz adamın canını sıkıyorsunuz. Adam akıllı yazdıklarımı okuyun. Ne dedim bir yorumda. Mühendis var teknik serviste çalışıyor mühendis var Apple'da çalışıyor. Senin okuduğun bölümden çok senin kendi bilgin yeteneğin ve araştırma çabalaman önemli. Sen öğrenmeye ve gelişime açık değilsen sen bir tak olmazsın. Yeter beyler. Bana özelden soru sormaktan vazgeçin. Soru soracaksanız gerçekten işle ilgili sorun giberim sizin tercihinizi amk adamı çileden çıkarmayın. -
11.
+2Ve son olarak yazıyorum beyler gerçekten adam akıllı şu an öğrenmek isteyenler varsa gelsin yanıma. Ben bilgimi aktarırım ama bazı mallar yüzünden şu girişimden soğudum şerefsizim. Gerçekten benimle devam edecekler bu yazımın altına yanıtlasın yeterli ilgi görürse devam edeceğim yoksa benden bu kadar bana eyvallah.
-
-
1.
0devam reyiz
-
2.
0devam lan dinliyoruz amk
-
3.
0yazmıyorum amk canımı sıktılar.
-
4.
0devam kaç gündür giremiyordum
diğerleri 2 -
1.
başlık yok! burası bom boş!