Java'da sıfırdan programlamayı öğrenin. Java programlama eğitimi

Bu yazıda Delphi dilinde programlamanın temellerini olabildiğince basit ve anlaşılır bir şekilde açıklamaya çalışacağım.

Aptallar için Java. Ders 1. Merhaba Dünya!

İlk olarak, size Java'nın neler yapabileceğini anlatacağım. İlk olarak, bu dilde uygulamalar yazabilirsiniz - web sitesinin web sayfasına yerleştirilmiş programlar. Örneğin, bir oyun, bir iş grafik sistemi ve daha fazlası olabilir. İkinci olarak, Web ile ilgili olması gerekmeyen, tam teşekküllü uygulamaları Java'da yazabilirsiniz. Veya sunucu uygulamaları da mümkündür - uygulamaların aksine, istemci tarafında değil sunucu tarafında yürütülen programlar.

En temel bilgilerle başlayalım. Geleneğe saygı gösterelim ve yazalım en basit program hangi bir karşılama mesajı görüntüler Selam Dünya. Java'nız yoksa, daha sonra resmi web sitesinden http://www.java.com/ru indirilebilir. Sonra kurun.

Java ise yüklediniz, ardından bazı düzenleyicilere aşağıdaki metni yazın:

Herkese açık sınıf HellowWorld {

Genel statik boşluk ana ( dize argümanları ) {

sistem . dışarı . Yazdır ( "Merhaba dünya!" );

}

}

Ve adının altına kaydettiğinizden emin olun. MerhabaDünya. java - yürütülebilir sınıfın adı, dosya adıyla aynı olmalıdır. Derlemek için programı kullanın javac.exe standart pakete dahildir Java. Bir derleme toplu iş dosyası böyle görünebilir bu java dosyasının:

"c: \ Program Dosyaları \ Java \ jdk1.7.0 \ bin \ javac" HellowWorld.java

Duraklat

Derleme sırasında herhangi bir hata açılmadıysa:

daha sonra, büyük olasılıkla, derleme başarılı oldu ve onu HellowWorld'ün bulunduğu dizinde buldunuz. java HellowWorld de vardı.sınıf:

Şimdi derlenmiş dosyamızla birlikte Java yorumlayıcısını çağıracak başka bir toplu iş dosyası başlatalım:

"c: \ Program Dosyaları \ Java \ jdk1.7.0 \ bin \ java" HellowWorld

Duraklat

Her şey doğru yapılırsa, aşağıdaki sonucu almalısınız:

Eğer aldıysanız, sizi tebrik edebilirim - ilk Java programınızı yazdınız. Gelecekte, Java uygulamalarının nasıl yazılacağını ve çok daha fazlasını öğreneceğiz. Ve şimdi programın kendisi hakkında birkaç söz. Gördüğünüz gibi, public kelimesiyle başlıyor. Bu, genel bir şey bildirdiğimiz anlamına gelen bir değiştiricidir: bir sınıf, bir sınıf yöntemi veya bir değişken. Başka değiştiriciler var, örneğin: özel, korumalı, arkadaş canlısı, nihai, soyut, statik. Bazıları birbirleriyle birleştirilebilir. Örneğin private, bildirmek istediğimiz değişkenin diğer sınıflara özel olduğu anlamına gelir. Ancak değiştiriciye daha sonra geleceğiz. Şimdi aşağıdakileri düşünün anahtar kelime sınıf. Bu, bir sınıf ilan ettiğimiz anlamına gelir. Java'da her şey sınıflar üzerine kuruludur. Sınıflardan biri mutlaka temeldir. Ve temel sınıf herkese açık olmalıdır. Bu örnekte, bu HelloWord sınıfıdır. Şimdiye kadar bizimle birlikte olan tek kişi o.

şimdi açıklamaya çalışacağım basit kelimelerle nedir Sınıf ve nedir bir obje.

Zoolojideki okul kursunu hatırlayalım. Yaşayan dünya nasıl sınıflandırılır? İlk olarak, "krallık" kavramı tanıtılır.

1. Tek hücreli organizmalar krallığı,

2. Bitki krallığı

3. Hayvanlar krallığı.

Hayvanları alalım. Türlerine göre sınıflandırılabilirler. Örneğin:

1. Koelenteratlar yazın.

2. Bir tür yassı kurt.

3. Bir tür kabuklu deniz ürünleri.

4. Kordat türü.

İkincisi memelilere, sürüngenlere, amfibilere, kuşlara vb. ayrılır. Sınıflandırmaya daha derine inebilirsiniz, ancak şimdi bunu yapmayacağız, doğrudan programlamaya gideceğiz.

Java dilinde, canlılar dünyasının sınıflandırılması gibi, nesneleri (program ve veri parçaları) sınıflandırabilirsiniz. Bunun için sınıflar var.

Dur dur! - diyorsunuz, - neden bu nesneleri sınıflandırıyorsunuz?

Belirli bir demiurge (yaratıcı, tanrı) gibi, Dünya'da yaşam yarattığınızı hayal edin. İlk önce, en basit organik bileşikleri geliştirdiniz. Peki, deney uğruna, ne olur. Sonra onları, tuğlalardan olduğu gibi en basit mikroorganizmaların bir araya getirildiği karmaşık moleküller halinde birleştirdiler. Ancak nihai hedefiniz akıllı yaşam yaratmaktır. Bu nedenle, orada durmadınız, çok hücreli organizmalar yarattınız. Sonra onları iyileştirmeye ve geliştirmeye başladılar. Bazı türlerin yaşayabilir olduğu ortaya çıktı, bazılarının nesli tükendi (dinozorlar). Ve sonunda hedefe ulaşıldı - Homo Sapiens ortaya çıktı - Homo sapiens.

Ve şimdi cennetten yeryüzüne inelim ve programlamayı bir yaratım olarak hayal edelim, burada programınızı, kullanılabilir olduğunda belirli bir duruma evrimleşmeye zorlayın ve daha sonra, kademeli olarak artan ve işlevselliği artırın.

Ve şimdi bir atomun bir programın veya bir bilgi biriminin en basit komutu olduğunu düşünelim (bu, gördüğünüz gibi, birbirinden ayrılamaz, çünkü program neyle - doğru, bilgiyle çalışır).

O halde molekül bir alt programdır. Veya bir nesne.

Burada programımızda bir grup nesne oluşturduk. Kafaları karıştırmamak için onları bir şekilde sınıflandırmak gerekir. Bu nedenle Java sınıflar sağlar. Onların yardımıyla, bir nesne sınıfını tanımlarız (genel bir kavram, örneğin kuşlar) ve daha sonra açıklanan sınıfa sahip olarak bir nesne oluşturabiliriz - bu sınıfın bir örneği. Yani, sınıf, Kuş kelimesinin ta kendisidir ve analojimize devam edersek, nesne bir tür özel kuştur.

Ayrıca, kuşlar farklı türlerdedir. Ancak hepsinin "Kuş" kavramından miras kalan bazı ortak özellikleri vardır. Böylece Java'da bir sınıftan, özelliklerini ve yöntemlerini (işaretlerini) miras alan başka bir sınıf oluşturabilirsiniz. denir miras.

Farklı kuşların farklı tüy rengi, gaga şekli ve kanatları vardır. Benzer şekilde, sınıflar için yeni bir sınıf oluştururken kalıtsal özellikler değiştirilebilir. denir polimorfizm.

Böylece Java'nın temel kavramlarını anladık. Şimdi programın üzerinden geçelim.

Sınıfı şu şekilde ilan ediyoruz:

genel sınıf HellowWorld {

Bu durumda programımızda sadece bir sınıf vardır ve bu temel sınıf yani programı başlatmaktan sorumlu sınıftır. Bu nedenle, yorumlayıcının programı çalıştırmaya nereden başlayacağını "bilmesi" için adının dosya adıyla eşleşmesi gerekir.

Temel sınıfın (HelloWorld) bir temel yöntemi vardır: main. Public ve static olarak ilan ettik. İlki, bu yöntemin genel olduğunu gösterir. Böyle olmasaydı, program basitçe başlamayacaktı. Herkese açık olmayan yöntemler de var, ancak bundan sonraki derslerde bahsedeceğiz, şimdilik sadece temel yöntemin (program başladığında çalıştırdığımız) herkese açık olması gerektiğini unutmayın. Ve adı ana olmalıdır, böylece tercüman programı çalıştırmaya nereden başlayacağını bilir.

Şimdi statik olan nedir. Bu, yöntemin statik olduğunu gösteren bir değiştiricidir. Yani, sınıf (nesne) somutlaştırılmadığında bile çalışır. Genel olarak, statik değiştiricili alanlar ve yöntemler, sınıfın tüm nesneleri için ortaktır. Bu konuyu ayrıca ilerde konuşacağız.

Her yöntemin bir dönüş değeri olabilir veya olmayabilir. Eğer öyleyse, o zaman bir fonksiyondur. Dönüş türü de yöntem bildiriminde belirlenir. Değilse, void koyun (örneğimizde olduğu gibi).

Bir nesnenin alanlarına ve yöntemlerine yapılan başvuru bir noktadan geçer. Ayrıca, örneğimizde kullandığımız System gibi yerleşik nesneler de vardır:

sistem . dışarı . Yazdır ( "Merhaba dünya!" );

bu durumda, aynı zamanda veri çıktısı için amaçlanan bir nesne olan out alanına başvururuz ve metni ekranda görüntüleyen yazdırma yöntemini çağırırız (eski eski Basic'te olduğu gibi, PRINT komutu).

(C) Shuravin İskender

Eğitim kutsal bir inek olmamalı, bundan eminiz! Değiştirilmelidir ve değiştirilebilir. Biz de tam olarak bunu yaptık ve başka hiçbir çevrimiçi kursa benzemeyen bir CodeGym programlama kursu geliştirdik. Kimin ve nasıl kontrol edeceği belli olmayan uzun videolu anlatımlar ve görev listesi içermiyor. Ama açıkça tanımlanmış bir hedef var, geliştirilmiş özel araçlarçalışma için ve elde edilecek sonucu ayarlayın.

CodeGym Derslerinin En İyi 12 Özelliği

Genellikle çevrimiçi programlama kursları öğreticiler veya video eğitimleridir. Bizde öyle değil. Bir dizi kısa Java dersi oluşturduk, bunları pratik görevlerle doldurduk ve çözümün doğruluğunu kontrol etmek için akıllı araçlar sağladık. Ve tüm bunlar tutarlı ve bütünleyici bir kurs şeklinde!

Bir programcı olarak sizi pompalıyorum. Bunlar sadece yeni başlayanlar için Java dersleri değildir - bu, edinilen bilgileri "burada ve şimdi" pratikte pekiştirmek için bir fırsattır. Kısa dersler veriyorsunuz, sonra orada sorunu çözüyor ve bunun için bir ödül alıyorsunuz. Bu mantıklı ve anlaşılabilir. En çeşitli görevleri çözeceksiniz. En yaygın görevler, bir sorunu çözmek için kod yazmaktır. Ama bunların yanında, başka birinin kodunu okumayı, içindeki hataları düzeltmeyi, iyileştirmeyi (yeniden düzenleme), yeni özellikler eklemeyi öğrenmeniz gerekecek.Bazen BT uzmanları hakkında ilginç videolar izlemek zorunda kalacaksınız ve öğretenler onu bulacaktır. kodu ayarlamak için kullanışlıdır. Yeterince uzağa hareket edenlerin büyük görevleri olacak, aynı zamanda mini projeler: onları tamamlayarak birkaç tane yazacaksınız. ilginç programlar daha ciddi (küçük oyuncaklar, çevrimiçi sohbet vb.).

2. Java dersleri, gereksiz bir şey yok!

Java ve diğer herhangi bir programlama dili çok uzun süre öğrenilebilir. Yolun en başındaki derin ormana girmemek için yeni başlayanlar için gereksiz, çoğu zaman programlama dersleriyle dolu olan ders konularını kaldırdık. CodeGym'de yalnızca temel özellikler kaldı. Ve bunlar boş sözler değil: Bu, yüzlerce boş pozisyonun analizinin sonucudur. Bu nedenle, kursun tam olarak gelecekteki bir Java Junior Developer'ın bir iş bulmak için bilmesi gereken konuları içerdiğini iddia ediyoruz. Java Junior olma süreci, çalışmak için ne kadar zaman harcadığınıza bağlı olarak sizi üç aydan bir yıla kadar sürer. Günün veya gecenin herhangi bir saatinde çalışmak uygun olacaktır: sitede açık ve koyu bir tema mevcuttur - herhangi birini seçin.

CodeGym Işık Teması

"Parlak tarafa" gidin (isterseniz, elbette!). Bütün insanlar farklıdır. Birisi açık metinle çalışırken rahat koyu arka plan, birine - tam tersine. Kullanıcılarımızın isteklerini dikkate aldık ve artık CodeGym'in herhangi bir bölümünde açık temaya ("açık arka plan, koyu metin") geçebilirsiniz!

Yükleme Tarihi: 2017-11-17T13: 19:00


3.500 mini ders ve 1200'den fazla pratik görev.

Bu kursta çok fazla uygulama var. Çok, çok, çok pratik! Kurs, 500 mini ders (bunlar kısa Java dersleridir) ve 1200'den fazla pratik problem içerir. Ezici çoğunlukta, görevler küçük ama "binlerce!" Hepsini çözerek, ellerinizi almak ve daha ciddi sorunlarla başa çıkmak için gereken minimum deneyimi kazanacaksınız. Ayrıca kurs, sözde "büyük görevler" (aslında bunlar mini projelerdir) ve faydalı videoları içerir.

4. Dört görev, kırk seviye, tonlarca pratik bilgi.

Kurs 4 göreve bölünmüştür, her görev tamamlanacak 10 seviyedir. İlk görev, Java'nın temellerini sıfırdan, dilin sözdizimini ve bu konuyla ilgili çok sayıda görevi içerir. Görevler arasında çok basit olanlar var, geçen materyalin asimilasyonu için daha zor görevler var ve hangisini çözmeniz ve google'a gitmeniz gerekecek. En cesurlar için artan karmaşıklık görevleri de vardır. Bir sonraki seviyeye "atlayabilirsiniz", ancak mevcut seviyedeki görevlerin çoğunu çözerseniz. Bazıları pes etmezse, daha sonra güvenle ertelenebilir. Bu şekilde sona ulaşırsanız yaklaşık 500 saatlik uygulamalı programlama deneyimine sahip olacaksınız. Başarılı bir uygulama için böyle sağlam bir uygulama Java çalışması Ufaklık!
JavaSözdizimi Görevi Yeni başlayanlar için. Bu görevde, Java görevleri ve dersleri, dilin temel dil yapılarında (değişkenler, koşullu ifadeler, döngüler, yöntemler, sınıflar, koleksiyonlar ve nesneler hakkında temel bilgiler)
Java Çekirdeği Görevi Bu görevde, OOP'nin temellerini öğrenecek, serileştirme ve yöntem aşırı yüklemesine aşina olacaksınız.
Java Çoklu Okuma Görevi Çoklu iş parçacığı, bu arayışın ana kelimesidir. Ancak burada sadece bundan değil, Object ve String sınıflarının yapısı ve çok daha fazlası hakkında da konuşacağız. Bu görev ve bir sonraki görev aynı anda incelenebilir.
Görev Koleksiyonları Madenci için dinamit ne ise, Java programcısı için koleksiyonlar odur. Bunları bilmeniz gerekir, ancak bunları nasıl kullanacağınızı anlamak önemlidir. Ayrıca bu görevde JSON, Git, RMI, DynamicProxy ile çalışmak ve biraz da JavaScript ile çalışmak hakkında birçok bilgi var.

5. Online staj ve mülakat hazırlığı

CodeGush 35. seviyeden başlayarak ve hatta 40. seviyeden sonra, öğrenciler özel bir çevrimiçi staj yapabilirler, bu sırada ileri teknolojiler hakkında faydalı Java dersleri alacaklar ve bir özgeçmişe eklenebilecek ciddi bir proje yapacaklar. Ayrıca bu aşamada eğitimin sonlarına doğru uzmanlarımız özgeçmişinizin hazırlanmasında size yardımcı olacaktır. Ayrıca, zaten iş bulmuş olanların istihdam ve başarı hikayeleri hakkında faydalı makaleler bulacaksınız. Bu adamlar genellikle bizim için ilginç materyaller yazarlar ve iyi ve kötü deneyimlerini diğer öğrencilerle isteyerek paylaşırlar.

6. Sorunları uygun olduğu yerde çözmek.

Sorunları çözebilir ve doğrulama için gönderebilirsiniz:
  • doğrudan sitede. CodeGym, yalnızca yeni başlayanlar için ödevleri olan Java dersleri değildir. Aynı zamanda sorunları çözmek için etkileşimli bir ortamdır. Kullanışlı: Bir derste bir örneği analiz ediyorsunuz ve şimdi çok benzer bir görevi tamamlamanız gerekiyor. Malzemeyi birleştirmek için bu tür küçük görevler doğrudan CodeGym web sitesinde yapılabilir: bunun için WebIDE aracını geliştirdik;
  • Daha fazla zaman gerektiren görevler için profesyonel geliştirme ortamı IntelliJ IDEA'yı kullanmanızı öneririz. CodeGym öğrencilerinin işini kolaylaştırmak için bu popüler IDE için işlevsel bir eklenti oluşturduk. Eklenti, sorunun durumunu tek bir tıklamayla almanıza ve çözümü doğrulama için kolay ve hızlı bir şekilde göndermenize olanak tanır;
  • doğrulama için gönderdikten sonra farklı bilgisayarlardan/tabletlerden çalışıyorsanız yazdığınız çözüm kodu senkronize edilir.

7. Çözümlerin anında doğrulanması.

Öğrenciler duruma ilk elden aşinadır: problem hazırdır, ancak öğretmen hiçbir şekilde kontrol etmeyecektir. Java programlamayı sıfırdan öğreten bir öğretmenin aynı anda iki düzine (veya daha fazla) öğrenciyle meşgul olduğu ve her birinin ödevlerini kontrol etmek için zamanı olmadığı yüz yüze kurslarda durum tam olarak böyledir. CodeGym'de çözümün doğruluğunu/hatasını anında öğrenirsiniz. Sen:
  • Java'da bir çözüm yazmak;
  • "Kontrol et" düğmesine tıklayın: çözümünüz CodeGym sunucusuna gönderilir!
  • bir saniye - ve hata durumunda kararınızın ve önerilerinizin doğruluğu hakkında bilgi alırsınız.
Yeni başlayan birinin derleyicinin geçemediği mantıksal hataları yakalaması çok zordur. Bir problem çözüyorsun ama çözümün doğru olup olmadığını bilmiyor musun? Sorun değil: CodeGym'in öneri sistemi, çözümünüzde hatanın nerede gizlendiğini size gösterecektir.

9. Yardım sayfası.

CodeGym tavsiye sistemi size yardımcı olmadıysa ve zor bir sorunu çözmeye çalışırken sıkı sıkıya bağlı kalsanız bile, yardım sayfasına bir göz atın - bu hizmet sizi bir sorunla yalnız bırakmaz. Öğrencilerden veya CodeGym ekibinden biri size kesinlikle yardımcı olacaktır.

10. İlgi alanlarına ve şehirlere göre gruplar.

Topluluk - Diğer öğrencilerden ve endüstri profesyonellerinden makaleler okuyabileceğiniz, kendi konularınızı yazabileceğiniz, yarışmalara katılabileceğiniz, Java veya programlama konularını yorumlayabileceğiniz ve tartışabileceğiniz ilgi grupları.

11. Sosyal ağlar ve CodeGym

VK ve Facebook'ta CodeGym gruplarına abone olun. Onlarda BT haberlerini, Java programlama derslerini tartışabilir, başarılarınızı arkadaşlarınızla paylaşabilir, Java video eğitimlerini izleyebilir veya yardım isteyebilirsiniz. Temas halinde:

7 yıldır Java ile programlama yapıyorum. Ancak işte, genellikle yeni bir neslin yetiştirilmesi gerekir. Bu bağlamda, habrchan için yararlı olacağını umduğum bir hile sayfası yapmaya karar verdim. Birisi bu makaledeki bilgilere bir şeyler eklemeye yardımcı olabilirse, yazın! Yani:

İlk Öğrenme için Temel Kaynaklar

  • www.javable.com - Java ile ilgili, çoğunlukla Rusça makaleler ve eğitimler içeren site.
  • www.exampledepot.com, belirli paketler için sınıfları kullanmanın kısa örneklerini içeren çok faydalı bir kaynaktır.
  • java.sun.com - birincil kaynak olmadan yapamazsınız. Herhangi bir Java programcısı için JavaDoc nihai gerçek olmalıdır. Burada ayrıca olası tüm konularda bir dizi eğitim bulabilirsiniz.

Temel Java paketleri

Aşağıda, bir programcının akıcı olması gereken Java paketlerinin bir listesi bulunmaktadır. Onlarla hem JavaDoc'lar hem de www.exampledepot.com yardımıyla tanışmanız tavsiye edilir. Tüm paketler çalışma için önerilen sıraya göre düzenlenmiştir. Yani:
  1. Java.lang, temel bilgilerin belkemiğidir. Bu paketteki her sınıf ayrı bir ilgi gerektirir.
  2. java.io - G/Ç işlemleri olmadan hiçbir program yapamaz.
  3. java.util - paket temel olarak koleksiyonlarla çalışmak için ihtiyacınız olan her şeyi içerir: Koleksiyon, Numaralandırma, Küme, Liste, Harita vb. vesaire.
  4. java.net - Temel ağ sınıflarını içerir.
  5. java.text - metninizi biçimlendirmek için ihtiyacınız olan her şey
  6. java.lang.reflect - Java, Reflection olmasaydı, Java olmazdı "ah. Yansıma, veri ve kod arasındaki çizgiyi bulanıklaştırır.
  7. javax.sql - veritabanlarıyla çalışmak için ihtiyacınız olan her şey
  8. javax.xml.*, org.w3c.dom.*, org.xml.sax.* - XML ​​ile çalışmak bu paketler olmadan düşünülemez

Ufkunuzu genişletmek için kaynaklar

  • onjava.com - er ya da geç Java dünyasından tüm haberler buraya gelir
  • www.javaspecialists.eu - Java ile çalışmanın inceliklerini içeren birçok makale içerdiğinden kaynak hem yeni başlayanlar hem de ileri düzey programcılar için yararlıdır.
  • www.theserverside.com - Java'da atlanan çok ilginç şeyler olduğundan, RSS'ye abone olmanız önerilir.

Herkesin Bilmesi Gereken Java Kitaplıkları

Java, yalnızca JSDK'nın yeteneklerinin bilgisi ile bitmez. Rahat hissetmek için iki düzine daha bilmelisin üçüncü taraf kitaplıkları tarafından kullanılan Java programcıları her yerde. Öyleyse ana olanlarla başlayalım:
  • Commons Lang - JDK'ya dahil etmeyi "unutmuş" bir şey
  • Commons Math, java.math'e harika bir ektir
  • Commons Günlüğü - günlük kaydı yetkin olmalıdır. System.out.println'in günlükleri görüntülemesi için, acemi programcıların bir haftalık eğitimden sonra ellerini kesmeleri gerekir.

Merhaba sevgili okuyucu. Uzun zamandır böyle bir makale yazmak istiyordum ama ya yeterli zaman yoktu ya da hain tembellik araya girdi. Ama her ne olursa olsun, yine de size bir fayda sağlayacak bir şeyler yazmak için düşüncelerimi toplamayı başardım. Bilgi ve deneyimlerimi seve seve paylaşırım, karşılığında zaman ve ilgiyi hak ediyorsunuz. Bence bu yayın, ilgi alanlarını belirlemeye hazır ve hayatlarını BT ile bir şekilde bağlamak isteyenler için çok uygun. O zaman hadi gidelim!

Bir programlama dili seçme

Yayın, birçok benzer malzemeye benzemeye başlıyor. Türün yasasına göre, birkaç üç programlama dilinin adını yazmam, birkaç artı ve eksiyi belirtmem ve sonuç olarak soruyu cevaplamadan bir sonraki bölüme geçmem gerekecek. Kısmen, bunda bazı gerçekler var, çünkü herkes gelecekte ne tür bir ürün geliştirmek istediğine bağlı olarak kendisine daha yakın olan dili seçer. Çoğunuz okulda Turbo Pascal okudunuz ve şu anda bu dilde neredeyse hiçbir şeyin yazılmadığı size pek haber olmayacak. Yani bu durumda, asla çok fazla bilgi olmamasına rağmen, bir dili akıllıca seçmeniz gerekir, ancak kısa sürede programcıların saflarına etkili bir şekilde katılmak istiyorsanız, bir dil seçerken akıllı olmanız gerekir. En başta şunu unutmayın: iyi bir programcı asla aç kalmaz ve çoğu durumda kendine bolca havyar satın alabilir.(Bu tanım herhangi bir uzmanlık için uygundur, ancak hiçbir uzmanlık size hem şirketler hem de ülkeler açısından bir iş yeri seçme özgürlüğü vermez - o Hindistan'da bir programcı ve programcıdır).

Dil ne kadar popüler ve talep olursa, gelecekte iş bulma şansının o kadar yüksek olması ve dilin öğrenilmesinin kolay olması mantıklıdır. Çünkü çok sayıda oyun C++ ile yazılmış olmasına ve bunun için iyi para almasına rağmen, özellikle OOP'ye (nesne yönelimli programlama) aşina olmayan yeni başlayanlar için bu dili bir süreliğine bir kenara bırakmak daha iyidir. Aşağıdaki bağlantı 2014 yılının en popüler programlama dillerinin bir listesini sunuyor ve gördüğünüz gibi önce Java, ardından C dilleri, ardından Phyton, JavaScript, PHP, Ruby vb. Bu tür istatistikleri kendiniz araştırırsanız, farklı kaynaklarda yerlerin farklı şekillerde işgal edildiğini göreceksiniz, ancak genel olarak içerik açısından ilk 10 yer her yerde aynı olacaktır.

Twitter'da yayınlanan iş ilanlarının analizine göre bir başkasına yönelirseniz, ilk örnekte çok benzer bir durum göreceksiniz. Ve evet, her iki makale de İngilizce, buna alışın, programcı olmak istiyorsanız, hemen hemen tüm belgelerin ve kaynakların olduğunu unutmayın. kullanışlı bilgiİngilizce yazılmıştır, bu yüzden bu dil bilginiz zayıfsa, kendinizi İngilizce öğrenmek ve pratik yapmak için yarın ve yakın gelecek için yapılacaklar listenize ekleyin. Sanırım yabancı dil öğrenmeye ayrılmış ayrı bir makale bile yazacağım.

Bu iki kaynağa dayanarak, şu anda hangi programlama dillerinin "moda" olduğunu şimdiden hayal edebiliyoruz. Adından da anlaşılacağı gibi, makalenin yazarı kendisi için Java'yı seçti. OOP öğrenmek için en iyisi olduğunu düşünmeme rağmen, benimle aynı fikirde olmayan birçok insan var ve bu mantıklı - kaç kişi, çok fazla fikir. Burada küçük bir kavşakta duruyoruz: Programların ve uygulamaların dolgularıyla (arka uç) çalışmak istiyorsak Java, C # (Java'ya çok benzer), Phyton'u veya istersek PHP, JavaScript, HTML'yi seçin. web geliştirme yapmak (ön uç). İlk durumda, seçimimi Java'da durdururdum ve ikincisinde - PHP'de, yine burada beğeninize göre daha fazla olsa da, çeşitli diller hakkında kendiniz bilgi aramanız ve genel olarak ne anlamanız gerektiğini anlamanız gerekir. yapmak istiyorum. Düşünmek için, işte dünyanın en büyük İnternet şirketleri tarafından kullanılan dillerden bir seçki.

Java veya PHP'yi seçmemin 2 ana nedeni var. Birincisi çok popüler diller ve uygun bir iş bulmak zor olmayacak, ikincisi ise başka hiçbir dilde bu kadar çok öğretim materyali bulamazsınız hem bu ikisinde hem Rusça hem de İngilizce.

Eğitim

Böylece, çoğu insanın oraya sorunsuz bir şekilde ulaştığı aşamaya geldik, ancak bu dönem haklı olarak bir programcının kariyerindeki en zor dönemlerden biridir. Bir programcı hayatı boyunca öğrense de, ilk adımlarını atmaya başladığı zaman gelecekteki kaderini büyük ölçüde belirler. Genel olarak, eğitim bir kişiyi güç, dayanıp dayanmayacağı, bir ay içinde ilgisini kaybedip kaybetmeyeceği (bazılarında olduğu gibi), sonuna ulaşıp ulaşamayacağı ve hangi katmanların üzerinde olduğu temel bilgilere hakim olup olmayacağı konusunda test eder. bilgi daha sonra katmanlı olacaktır.

Genel olarak, pratikte defalarca onayladığım kendi teorim var: kesinlikle her şey 1 yılda öğrenilebilir.... İnanın bu kesin bir gerçek, insanın daha az zamana ihtiyacı olacaktır ama bir yıl içinde insan pes etmez ve öğrenmeye akıllıca yaklaşırsa, öğrenmemesi neredeyse imkansızdır. Bu sadece programlamada değil, kesinlikle herhangi bir alanda: gitar çalmak istiyorsanız - sorun değil (çok fazla zaman ve çaba gerektirmedi), Arjantin tango öğrenin, sörf yapın - tüm bunlar bir yıl için yeterli olacak . Ana şey öğrenmektir!

Bu durumda, bana hala daha yakın olduğu için Java dilini ele alacağım. Neyse ki İnternet, başkalarına ücretsiz olarak eğitimde yardımcı olan insanlarla doludur, bu nedenle size uygun materyali bulmak zor değildir. , rahat dairenizin duvarlarında kalem ve kağıtla görüntüleyebileceğiniz (şimdiye kadar sadece Rusça). Geçersiz materyalleri okumaya alışmış olanlar için yine İnternet harika fırsatlar sunuyor ve bu Java dersleri olan her türden siteden sadece biri. Pek çok teori var, ancak çeşitli dillerde ve programlama dahil çeşitli alanlarda eğitim kursları bulabileceğiniz Coursera.org gibi bir eğitim sitesi hakkında söyleyemem - yine her şey tamamen ücretsiz. Böyle bir veya iki site yok, sadece aramanız gerekiyor.

Ancak teori ne kadar bilişsel olursa olsun, uygulama olmadan programlama vazgeçilmezdir. Ancak burada bile işin yarısı bizim için zaten yapıldı ve becerilerinizi geliştirmek için çeşitli görevler aramanıza gerek yok, CodeGym gibi bir hizmet bu konuda çok yardımcı olacaktır. Genel olarak, bu site ekrandan kod kopyalama ile başlayan ve karmaşık görevlerle biten hem teori hem de pratik sağlar ve arada sırada dinlenmeyi ve iyi bilinen animasyon dizilerini izlemeyi bile teklif eder. Yazarların güvencelerine göre hizmette 20. seviyeye ulaşanlar bir bilişim şirketinde iş bulabilecek yeterli bilgiye sahip olacaklar.

Ve elbette birisi soracak, peki ya kitap? Onları okuman gerekmiyor mu ve eğer okuman gerekiyorsa, o zaman ne olacak? Buna kimsenin kitap okumaktan daha aptal olmadığını söyleyeceğim. Ayrıca çok sayıda kitap var, ancak bunların sadece küçük bir kısmını listeleyeceğim:

pratikte yardım

Daha önce de belirtildiği gibi, uygulama herhangi bir öğrenmenin, özellikle de programlamanın önemli bir parçasıdır. Burada parmaklarınızın kas hafızasına kadar kodlamanız ve kodlamanız gerekir. Bu elbette biraz abartılı, ancak çeşitli yapıların anlamlarını ezberlemek için ilk başta gerçekten tuşlara çok basmanız gerekecek, böylece gelecekte neredeyse otomatik olarak kullanabilirsiniz.

İlk başta, birçok acemi programcının, özellikle bağımsız bir görevi tamamlamaları gerektiğinde birçok sorusu vardır. Bu iyi. Ancak bu gibi durumlarda, hemen hemen her sorunuzun İnternet'te cevaplanabileceğini anlamalısınız. Bununla ilk karşılaşan muhtemelen siz değilsiniz, bu yüzden zaman ayırın ve çeşitli programcıların forumlarına sorular sorun (ki bunu biraz sonra yazacağım). Bir dakika oturun, sorunu kafanızda doğru bir şekilde formüle edin ve bir arama motorunda aramaktan çekinmeyin. Elbette çoğu Rusça arayacaktır, ancak programcıların dilinin İngilizce olduğunu unutmayın, bu nedenle cevabı büyük ve güçlü bulamadıysanız, herkesin okulda öğrenmiş göründüğü dile bakmalısınız, ancak asla öğrendi. Ancak bu durumda, sorunuzun hiçbir yerde cevabı olmadığı ortaya çıktıysa bile, en iyi İnternet forumları savaşa giriyor:

  • Cyberforum - bence, BT uzmanları için en popüler Rus dili forumu, burada sadece programlama alanında değil, soruların cevaplarını da bulabilirsiniz;
  • Programcılar forumu - büyük Rusça dil forumu;
  • Arama motorları iyi bilinen bir forumdur, ancak daha çok web programlama konusunda uzmanlaşmıştır;
  • Yığın taşması - ve işte bu, bu sözlerden korkmuyorum, dünyanın en popüler BT forumu, hemen hemen tüm sorularınızın yanıtlarını burada bulacaksınız;
  • Dev shed aynı zamanda büyük bir İngilizce forumdur;
  • Quora, doğrudan programlama konusunda uzmanlaşmayan bir forumdur, ancak gerçek bir profesyonelden yanıt almanız kuvvetle muhtemeldir.

Forumlar, elbette, sorularınıza yanıt almanın tek yolu değildir. Uygulamalarında, programcılar her yerde resmi görevlilerle çalışırlar. belgeler yazdıkları dil. Belirli sınıfların ve arabirimlerin nasıl çalıştığını açıklar, bazen belgeler sorunların çözülmesine yardımcı olabilecek tek kaynaktır, çünkü bu yalnızca İlk aşama herkesin benzer soruları vardır ve sorunsuz hazır çözümler bulabilirsiniz, ancak ormana ne kadar girerseniz, cevapları bulmak o kadar zorlaşır, bu yüzden umarım zaten akıllı kafanıza güvenmek zorundasınız.

Kodu derlemek

Halihazırda epeyce yazdım, bu kadar geniş bir konuyu bir yazıda ele almak elbette zor ama bence ilk adımlar atılmış ve sizde uygun düşünceleri uyandırmalı. Sanırım bu, "Nasıl programcı olunur" dizisindeki ilk makale ve buna göre "neden?" Bir kavşakta duruyorsanız ve henüz hangi yolu seçeceğinizi bilmiyorsanız. Bir dahaki sefere maddi anlamda daha ilginç şeylere değineceğim, çünkü programcıların fakir insanlar olmadığı ve nereden ve ne kadar kazandıkları bir sır değil, bir dahaki sefere göreceğiz.

Son olarak, gerçekten programcı olmak isteyenler için, boğayı boynuzlarından almak, tüm iradeyi bir yumrukta toplamak ve ne istersen onu yapmak istiyorum. Benden önce binlerce kez konuştular, ama kendimi tekrar edeceğim, asıl şey arzu ve çalışmaktır. O zaman her şey senin için işe yarayacak. En önemli şeyi hatırla: programlama dilleri ve çeşitli teknolojilerin çalışmasını bir amaç olarak değil, bir ARAÇ olarak alın. Sadece sizin için hangi fırsatların açıldığını hayal edin. Belki de dünyayı gerçek zamanlı olarak değiştirenlerden biri olacaksınız. İyi şanslar ve ilginiz için teşekkürler!

video bonusu

Etiketler: Etiket Ekle

Muhtemelen pek çoğu şöyle diyecektir: "Java'da zaten birçok iyi kitap yazılmıştır, neden bir tane daha?" Ve çoğu için, büyük olasılıkla kitabım yeni bir şey vermeyecek. Sonuçta, ana okuyucusu (muhtemelen) programlama konusunda hiç deneyimi olmayan bir kişi olmalıdır. Bir yandan, iyi bir kitap almak yeterli gibi görünüyor, çoğu tam tanım bu kadar. Ancak pratikte, bu durumdan çok uzak. Bir şey hakkında okumak yeterli değildir. Ana şey, nasıl kullanılacağını anlamaktır. Belirli bir sorunu çözmek için farklı bir araç setini uyarlayabilme. Mevcut seçeneklerden hangisinin daha iyi olduğunu değerlendirin. Bu nasıl başarılabilir? Uygulama. Önemsiz örnekleri ayrıştırma ve benzer sorunları kendi başınıza çözme konusunda çok fazla pratik yapın. Ancak, uygulama ne yazık ki hepsi değil. Buna ek olarak, doğru seçilmiş, dozlanmış bir teori olmalıdır. Bu, tüm bilgileri bir kerede okuyucuya tam olarak bırakmayacağım anlamına gelir. Şeylerin özünü daha iyi anlamak için kasıtlı olarak çok şeyi basitleştireceğim. Umarım profesyoneller bunun için bana öfkeyle küfretmezler. Nitekim kitabımı okuduktan sonra okuyucu daha detaylı bilgi veren literatüre geçebilecek ve kendi başına anlayabilecektir.


Bölüm: Giriş (veya programlama hakkında bir hikaye)

Muhtemelen, ilerici çağımızda birçok kişi "program" ve "programlama" gibi kelimeler duymuştur. Şimdi ne olduğunu, nereden geldiğini ve hangi yönlere girdiğini anlayalım.
İlk olarak, "program" terimiyle başlayalım. Basit bir deyişle, bir program, bilgisayara gerçekleştirmesi gereken bir dizi eylem veya talimattır. Bir programı başlattığımızda, içinde belirtilen tüm komutları veya talimatları sırayla çalıştırırız. Programlama, sırasıyla, program oluşturma veya yazma işlemidir.
Bilgisayar programda yazılan komutları nasıl anlıyor veya kodunu çözüyor?
Aslında, bir bilgisayarın gördüğü program ile bir kişinin ekranda gördüğü program, yazılı oldukları için çok farklıdır. farklı diller... Bir bilgisayar makinesi yalnızca ikili kodu anlar - belirli birler ve sıfırlar kombinasyonları. Nedenmiş? Sürecin mekaniğine dönersek çok basit. Bilgisayara komutlar, bir dizi kablodan (kanallardan) ve sözde veri yolundan oluşan döngüler aracılığıyla iletilir. Kanalda elektrik sinyali varsa ünite gelmiştir. Sinyal yok - sıfır.
Ancak, bir programcı tarafından yazılmış bir programın metnini açarsak, sürekli bir birler ve sıfırlar kümesi gibi görünmeyecek ve onu "okumak" ve komutlara ayrıştırmak oldukça mümkün olacaktır. O halde bir bilgisayar insanlar tarafından yazılan programları nasıl anlar? Ve burada sözde tercümanlar bir dilden başka bir esere çalışırlar. Bu çevirmenlere çevirmen denir. Çevirmenler iki türe ayrılabilir: derleyiciler ve yorumlayıcılar. Derleyiciler tüm programı çevirir ve özel yürütülebilir dosyalara kaydeder. Böyle bir programı çalıştırmak için ortaya çıkan dosyayı çalıştırmanız gerekir. Tercümanlar komutları çevrimiçi olarak çevirir ve hemen yürütür. Her seferinde bir komut: komutu çevirdi - yürütüldü, sonrakini çevirdi - yürütüldü, vb.
İkili koddaki talimatların sayısı, çevirmenin çevirdiği dilin karmaşıklık düzeyine bağlıdır. Dil, ikili koda yeterince yakınsa, böyle bir dilin bir talimatı, ikili kodda 1'den (birleştiriciler) 10'a kadar talimat verecektir. Bu diller, örneğin Pascal, C'yi içerir. C ++ ve Java gibi yüksek seviyeli diller için, yüksek seviyeli bir dilin bir komutu başına ikili koddaki komut sayısı 100 veya daha fazla olabilir. .
Bir yandan, tamamen makine diline çevrilen programlar daha hızlı çalıştığı için derleyicilerin kullanımı daha iyidir. Ancak, bu programlar yalnızca birinde çalışır. işletim sistemi ne için derlendiler. Tercümanların avantajları, çapraz platform olarak adlandırılan, yani belirli bir işletim sisteminden (platform) bağımsızlığı içerir. Ne anlama geliyor? Gerçek şu ki, aynı programı farklı işletim sistemlerinde çalıştırmak için farklı tercümanlar kullanılacaktır: Windows'ta bir tercüman, Linux'ta - başka, üçüncü bir işletim sisteminde - üçüncü bir vb. Ve programın metni değişmeden kalır. ve net, nerede açarsak açalım. Derlenmiş bir programla her şey daha karmaşıktır. İlk olarak, zaten makine diline çevrildi ve onu her zamanki biçiminde görüntüleyemeyeceğiz. İkincisi, program açıkça belirli bir işletim sistemine yöneliktir ve bunu derlenmiş bir programda değiştirmek imkansızdır. Böyle bir hileyi çevirebilmek için programcının anlayacağı dilde yazılmış kaynak programı alıp gerekli değişiklikleri yapıp başka bir platform (işletim sistemi) için derlemeniz gerekir.
Prensip olarak, herhangi bir dil için hem derleyiciler hem de yorumlayıcılar geliştirilebilir. Hem derleyicilerin hem de yorumlayıcıların bulunduğu bu tür diller, örneğin Visual Basic'i içerir. Ancak, yalnızca derleyicilerin veya yorumlayıcıların bulunduğu birkaç dil vardır. Örneğin, Pascal dili için birçok derleyici var, ancak yorumlayıcı yok (en azından ben onları duymadım). VBScript, JavaScript dilleri için yalnızca yorumlayıcılar vardır.
Ayrı olarak, derleme ve yorumlama ilkelerinin bir kombinasyonunu kullanan programlama dilleri seçilebilir. Bu tür diller arasında Java bulunur. İlk olarak, Java ile yazılmış bir program bir derleyici tarafından işlenir. Ancak, çıktı makine kodu değil, daha sonra Java sanal makinesi tarafından yorumlanan bazı ara kodlardır (sözde kod veya bayt kodu). Java Sanal Makinesi, sözde kod programının çalışacağı işletim sistemine yüklenmesi gereken bir programdır.
Programlar nasıl ve nerede yazılır?
Çalışan bir program oluşturmak için neye ihtiyacımız olduğunu düşünelim. Öncelikle programın metnini bir yere yazmamız gerekiyor. Yani biraz ihtiyacın var Metin düzeltici, bunu yapacağımız ve kaydedebileceğimiz. İkincisi, bir derleyiciye veya yorumlayıcıya ihtiyacınız var. Prensip olarak, bu gerekli bir minimumdur. Fakat! Program yazarken, tüm insanlar gibi bizim de hata yaptığımız akılda tutulmalıdır. İlk olarak, metinde bir hata yapabiliriz. Bir metin editörünün, yazılı komutların söz dizimindeki en azından en basit hataları görebilmesi ve bir şekilde bunu bize bildirebilmesi (örneğin, Word'ün sıradan metinler için yaptığı gibi, altını çizerek) uygun olacaktır. İkincisi, metinde her şey doğru yazılmış gibi göründüğünde, ancak hiçbir şey beklendiği gibi çalışmadığında mantıksal hatalar olabilir. Bu durumda, program çalışırken hataları bulmak için uygun araçlara sahip olmak güzel olurdu.
Programcıların rahatlığı için, tüm uygun araçlar özel programlarda - programlama sistemlerinde birleştirilir. Genellikle özel bir metin düzenleyiciye, çevirmenlere ve bir hata ayıklayıcıya (programın yürütülmesi sırasında hataları bulmak için) ve programcının zor çalışmasını kolaylaştırmak için birçok kullanışlı araca sahiptirler. Bu "güzellikler", program parçalarının otomatik olarak oluşturulmasını, programların tek tıklamayla uygun şekilde başlatılmasını (programlama sisteminin kendisi gerekli çevirmeni ve sonuçta ortaya çıkan yürütülebilir programı başlattığında) ve çok daha fazlasını içerir.
Genellikle, bir dil için bir değil, birkaç programlama sistemi vardır. Doğal olarak her programcı kendisine en uygun sistemi seçer. Örneğin, Java için en yaygın programlama sistemleri "IntelliJ Idea", "Eclipse", "NetBeans"tir.
Yazar bunlardan ilkini tercih ettiğinden ve gerisi sizin için hala bilinmediğinden, uygulamamız için "IntelliJ Idea" kullanacağız.


Bölüm 1. Gerekli programların kurulması ve yapılandırılması

Bölüm: JDK - Java Geliştirme Kiti

En önemli şeyle başlayalım - kiti kurmak gerekli programlar Java ile yazılmış programların geliştirilmesi ve yürütülmesi için. İngilizce'de bu setin adı kısaca Java Development Kit veya JDK gibi geliyor. Gelecekte kullanacağımız son kısaltmadır.
JDK'da neler var?
JDK aşağıdaki bileşenleri içerir:
1) JRE - Java Çalışma ZamanıÇevre
Sözde kodu yürütmek için gerekli olan bir program ve kitaplık koleksiyonu. Aslında, bu sanal makine Java, bunun için derlenmiş programları çalıştırmak için gereklidir.
Not: Yalnızca derlenmiş Java programlarını çalıştırmak ve bunları oluşturmak istemiyorsanız, JDK'yı kurmanın bir anlamı yoktur. Yalnızca JRE'yi yüklemeniz gerekir.
2) derleyiciler
3) hata ayıklayıcılar
4) özel kütüphaneler
5) ve diğer geliştirme araçları
Kütüphaneler nedir ve içinde neler vardır?
dil programları yüksek seviyeçeşitli tipik eylemleri gerçekleştirmek için hazır, test edilmiş kod parçalarını kullanın. Bu eylemler şunları içerir: ekranda bilgi görüntüleme, klavyeden veri girme, standart matematiksel işlevleri hesaplama vb. Bu tür kod parçaları, ayrı dosyalar olarak sunulan kitaplıklarda bulunur.
JDK'yı nereden edinebilirim?
JDK'nın herhangi bir sürümü, resmi Oracle web sitesinden tamamen ücretsiz olarak indirilebilir. Bunu yapmak için, önce herhangi bir İnternet arama motoruna şu arama sözcüklerini yazın: "JDK indir". Listedeki ilk site bizim.

ile plakada doğru sürümönce "Lisans Sözleşmesini Kabul Et" seçeneğini seçin (İngilizce'den "Lisans sözleşmesini kabul edin" olarak çevrilmiştir) ve ardından bu tablodaki gerekli dosyaya tıklayın.
Bildiğiniz gibi Java, platformlar arası bir programlama dilidir, yani içinde yazılan aynı program farklı işletim sistemlerinde aynı şekilde çalışır. İkinci özellik, farklı işletim sistemlerinde (platformlar) farklı JRE ve JDK nedeniyle elde edilir.
Doğal olarak indirmelisin kurulum dosyası işletim sisteminizle eşleşen Örneğin, Linux kullanıyorsanız, Linux için uygun dosyayı seçin. Windows altındaysa - Windows için dosya.
JDK'yı 32 bit işletim sistemi altında kuruyorsanız, x86 işaretli dosyayı indirin. 64 bit ise - x64 ile işaretlenmiştir.
Not. Windows 7'de sistemin bit derinliği şu şekilde bulunabilir: "Başlat"a tıklayın, sağ tık fare "Bilgisayar", "Özellikler" i seçin. "Sistem Tipi" özelliğinin değerine bakıyoruz.

Örneğin:

Windows 64-bit işletim sistemi ve JDK 8u101 için istenen dosya aşağıdaki ada sahip olacaktır:
"jdk-8u101-windows-x64.exe"

32 bit Windows işletim sistemi ve JDK 8u101 için gerekli dosya aşağıdaki ada sahip olacaktır:
"jdk-8u101-windows-i586.exe"

JDK'yı nasıl doğru şekilde kurar ve yapılandırırım (Windows 7 için)?
Birinci Aşama: JDK'yı Yükleme
JDK'yı kurmak için, kurulum exe dosyasını JDK'nın gerekli sürümüyle birlikte çalıştırmanız gerekir. Ardından kurulum adımlarını takip etmeniz yeterlidir.
Not: Aynı işletim sistemine birden fazla JDK ve JRE sürümü yüklenebilir. İşletim sistemi ayarlarında bir tür JRE'yi ana (Java sanal makinesinin kullanacağı) yapabilirsiniz. Bir proje için hem işletim sisteminde (tüm projeler için ortak olacaktır) hem de bu projenin yazıldığı programlama sisteminde belirli bir JDK belirleyebilirsiniz.
JDK 8u102'yi 64-bit bir ameliyathaneye kurma örneğini kullanarak tüm JDK kurulum sürecini inceleyelim. Windows sistemi 7 (jdk-8u102-windows-x64.exe dosyasını çalıştırmanız gerekecek).

1. İlk pencerede "İleri" düğmesini tıklamanız yeterlidir.

2. İkinci pencerede öncelikle JDK'mızın kurulacağı klasörü seçin. Bunu yapmak için "Değiştir ..." düğmesine basın ve diskte istediğiniz konumu seçin.

Not: Tüm klasörler için ortak bir konuma bağlı kalmanız önerilir. farklı versiyonlar JRE. Yani, paylaşılan klasörün yapısı aşağıdaki gibidir:

Bundan sonra "İleri" düğmesine basıyoruz.

İkinci aşama: kurulum Ortam Değişkenleri
Programlama sisteminin kendi programları için varsayılan olarak hangi jdk'yi kullanacağını bilmesi ve işletim sisteminin java dosyalarını tanıyabilmesi için işletim sistemimizde sistem değişkenlerini kurmamız gerekmektedir.
Bunu Windows 7'de yapmak için aşağıdaki adımları yapmanız gerekir:

1) Aşağıdaki ayarlara gidin:
Başlat düğmesi -> "Bilgisayar" -> "Özellikler" -> " üzerine sağ tıklayın Ekstra seçenekler ortamlar "-> sekmesi" Gelişmiş "-> düğmesi" Ortam Değişkenleri ... "

2) "Sistem Değişkenleri" listesinin altında "Oluştur" düğmesini tıklayın

3) Gerekli verileri girin ve "Tamam" düğmesini tıklayın:
Java_HOME değişken adı
değişken değer<путь к папке, куда устанавливалось JDK(не JRE!)>

4) Sistem değişkenleri listesinde "Yol" değişkenini bulun, seçin ve "Değiştir" düğmesine tıklayın.

5) "Değişken değeri" alanının sonuna gidin (hiçbir şeyi silmeyin !!!), aşağıdaki metni ekleyin ve "Tamam" düğmesini tıklayın:
;% Java_HOME% \ bin \

6) Ortam Değişkenleri penceresi için Tamam'ı, ardından Gelişmiş sekmesi için tıklayın ve bilgisayarınızı yeniden başlatın.


Bölüm: IDE (Entegre Geliştirme Ortamı) "IntelliJ Idea" - Entegre Geliştirme Ortamı (programlama sistemi) "IntelliJ Idea"

"IntelliJ Idea", en yaygın Java programlama sistemlerinden biridir. Kullanıcı dostudur ve programcının işini kolaylaştıracak birçok araca sahiptir. Kuşkusuz avantajlar arasında uygun fiyatlı ücretsiz sürümlerİnternetteki bu geliştirme ortamının

Not. IDE (entegre geliştirme ortamı) terimi, "programlama sistemi" kavramıyla aynıdır, ancak profesyonel bir ortamda daha sık kullanılır.

"IntelliJ Idea" yı nereden edinebilirim?
Bu IDE, JetBrains resmi web sitesinden indirilebilir. Bunu yapmak için önce herhangi bir İnternet arama motoruna şu arama sözcüklerini yazmanız gerekir: "Intellij Idea". Görüntülenen listedeki ilk site bizimdir.