25 Nisan 2016 Pazartesi

LMS Nedir?

BÖLÜM 3


ÖĞRENME YÖNETİM SİSTEMLERİ


3.1 LMS Nedir?

LMS tam anlamıyla bir sanal eğitim/öğretim ortamıdır. Bünyesinde eğitim almak isteyen kişiyi eğitmen ve eğitim materyali ile buluşturur. LMS yazılımları teknolojik altyapılarının elverdiği oranda eğitmen, öğrenci ve eğitim materyallerini etkileşime sokar. Sanal ortamda eğitim öğretim faaliyeti bu etkileşimin olumlu ve verimli bir şekilde sağlanması sonucu gerçekleşir. İnternet üzerinde hazırlanan bu ortamlara erişim genelde bilgisayar ile gerçekleşir. Ancak günümüzde artık kullanımı iyice yaygınlaşan akıllı telefonlar, tablet PC’ler vb taşınabilir cihazlar ile internet erişiminin mobil cihazlara ulaşması sonucu, e-öğrenme faaliyetleri de m-öğrenme şeklinde mobil dünyada yerini almıştır. 

Uzaktan eğitimde önemli bir yere sahip olan Öğretim Yönetim Sistemleri(ÖYS) Sanal Öğrenme Ortamı ya da Öğrenim Platformu olarak da bilinir. ÖYS, öğrenim sürecini planlamayı, değerlendirmeyi, uygulamayı sağlayan bir yazılım ya da web tabanlı bir teknoloji olarak tanımlanabilir. Tipik olarak bir ÖYS sistemi kullanan eğitmene eğitsel içeriğini elektronik formatta hazırlamasını, yönetmesini sağlamanın yanında materyali kullanan öğrencinin de performansını değerlendirme ve katılımını gözleme imkânını da sunar[5].

LMS’lerin temel amacı, öğrenim/öğretim programlarının yönetimini kolaylaştırmaktır. LMS’ler, öğrencilere öğrenim gelişimini planlamak, arkadaşlarıyla iletişim kurmak ve birlikte çalışmayı sağlayarak yardımcı olurken yöneticiler için kurumsal olarak hedeflenen öğrenime ulaşmak için müfredatları ve ders programlarını sağlamak, plan, etkinlik gibi bilgilerle ders materyalini öğrencilere ulaştırmak, öğrenci katılımını izlemek, analiz etmek ve raporlamakta yardımcı olmaktadır[6].

Bilgisayarların eğitim alanında kullanılma sürecine bakılırsa Bilgisayar Tabanlı Öğretim (Computer Based Instruction-CBI), Bilgisayar Destekli Öğretim (Computer Assisted Instruction-CAI), bilgisayar destekli öğrenim (Computer Assisted Learning-CAL), İnternet Tabanlı Öğrenme (Internet Based Learning-IBL) gibi kavramlarla karşılaşılmaktadır. Bunlar daha çok bireysel öğrenmeye / öğretime yönelik ve bir konuya özgü öğrenme kaynaklarıdırlar. Öğrenme yönetim sistemi ise adından da anlaşılacağı üzere bir yönetim aracıdır ve eğitim içeriklerinin yönetimine, öğrenenler ve öğretenlerin izlenmesine, öğrenme öğretme süreçlerinin bireyselleşmesine olanak sağlayan bütünleşik bir sistemdir. ÖYS ve diğer bilgisayar terimlerinin arasındaki temel fark ÖYS’nin bütün eğitim öğretim sürecini doğası gereği sistematik bir yaklaşımla kapsamasıdır[7].

LMS yapı olarak bir İçerik Yönetim Sistemi (Content Management System-CMS)’dir. CMS’ler internet ortamı için birden fazla kullanıcının bağımsız olarak, bir yetkilendirme hiyerarşisi içinde web sayfaları için içerikler hazırlayabildiği ve yönetebildiği sistemlerdir. CMS’de sistemin kullanıcıları tasarım ile uğraşmak zorunda kalmadan hazırladıkları içerikleri web sayfası haline getirebilir ve yayınlayabilirler. 

İnternet sayfalarında bulunan bilgilerin arzu edilen şekilde görüntülenmesini sağlayan yazılımlar olarak dar anlamlı bir tanımla değinilen İçerik Yönetim Sistemleri, uluslararası platformda birçok organizasyon için zorunluluk haline gelen modern bir varlık yönetimi tekniği olmuştur[8].

Öğretim Yönetim Sistemi(ÖYS) kurum içerisinde e-öğrenme eğitimlerinin çalışanlara atanması, çalışanların eğitimlerin alınmasını, sonuçların takibi ve sonuçların raporlanması gibi eğitim yönetimi süreçlerini yürütmek için kullanılan internet tabanlı yazılımlardır[8]. 

Yukarıdaki tanımlardan da anlaşılabileceği üzere LMS yazılımı sadece eğitim içeriğinin yayınlanmasından sorumlu internet sitesi değildir. Bu sistem aynı zamanda eğitim/öğretim faaliyetlerinin yönetilmesinden de sorumludur. Sistem bünyesinde yapılan faaliyetlerden olan dersler, oturumlar, sınavlar ve diğer işlemlerle ilgili istatistikleri tutar, raporlama yapar, çeşitli seviyelerdeki kullanıcılar için yetkilendirmeler belirler. Kısacası sanal ortamda bir okul kurup  ve eğitim verebilmesi için gerekli olan her türlü hizmeti sunan programlardır.



Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013



Kaynaklar:

  [5]    Aydın, C.Ç. ve Biroğul, S., E-Öğrenmede Açık Kaynak Kodlu Öğretim Yönetim Sistemleri ve Moodle. Bilişim Teknolojileri Dergisi, Cilt:1, Sayı: 2, (Mayıs 2008).
[6]    Bayram, F., İbili, E., Hakkari, F., Kantar, M. ve Doğan, M.,, E-Üniversite: SCORM Uyumlu Modüler Öğrenim Yönetim Sistemlerinin Yükseköğretimde Kullanımı. Akademik Bilişim’09 -XI. Akademik Bilişim Konferansı Bildirileri, Harran Üniversitesi, Şanlıurfa., (11-13 Şubat 2009).
[7]    Ozan, Ö. Öğrenme Yönetim Sistemlerinin (Learning Management Systems - LMS) Değerlendirilmesi. Eskişehir Osmangazi Üniversitesi Bilgisayar ve Eğitim Teknolojileri Bölümü. Eskişehir (2008).
[8]    Biroğul, S.,  Elmas, Ç., Doğan, N. ve Koç, M.S., Moodle Eğitim Yönetim Sistemi İle Örnek Bir Dersin Uzaktan Eğitim Uygulaması. Bilişim Teknolojileri Dergisi, Cilt:1, Sayı: 2, (Mayıs 2008).

Uzaktan Eğitim Almanın Bir Sakıncasi Var mı?

2.6 Uzaktan Eğitimin Dezavantajları


Uzaktan eğitimin, esnek eğitim ortamı, zaman ve mekan kısıtlamasının kaldırılması ve yine bunlara bağlı olan işletim masraflarının en aza indirilmesi gibi pek çok avantajının yanı sıra, hem eğitim alanlar için hem de eğitimi veren kurum için bazı dezavantajları da bulunmaktadır. Bu dezavantajlar şöyle sıralanabilir.

1. Uzaktan eğitimin, hizmeti alan kişi için en büyük dezavantajı sınıf ortamındaki gibi öğretmen ile yüz yüze iletişim halinde olamamasıdır. Bu eksiklik eşzamanlı(senkron) olarak, video konferans formatında hazırlanan dersler ile aşılmaya çalışılsa da sınıf ortamındaki öğrenci-öğretmen ilişkisi sağlanamamaktadır. Sanal ortamındaki öğrenci-öğretmen arasındaki soru-cevap süreci sınıf ortamındaki kadar kesin yürütülememektedir. 

2. İnternet bağlantısında meydana gelebilecek herhangi bir yavaşlama veya kesinti, öğrencinin aldığı dersin kalitesini olumsuz yönde etkiler. Eğer ders içeriğinde zamana bağlı öğeler var ise(mini testler, uygulamalar gibi) bağlantı sorunları ya da elektrik kesintisi gibi fiziksek sorunlar öğrencinin aleyhine sonuçların doğmasına neden olur. Aynı şekilde sistemin kurulu olduğu sunucu bilgisayarında meydana gelebilecek herhangi bir arıza, sistemden anlık olarak faydalanan herkesi olumsuz yönde etkiler. Ayrıca bilgisayar korsanlarının sisteme saldırıp işlemez hale getirmesi veya önemli bilgileri çalıp kullanıcıları zarara uğratması da söz konusudur.

3. Yukarıda anlatılan sorunların giderilmesi ve bilgi güvenliğinin sağlanabilmesi için uzman bir teknik kadronun istihdam edilmesi gerekmektedir. Ayrıca teknik altyapının ihtiyacı karşılayabilmesi için gerekli fiziksel araçlara(sunucu bilgisayarları, bağlantı sistemleri, güç kaynakları, ve sistemin barındırılacağı uygun bina ya da binaların tesisi gibi) yatırım yapılmalıdır. Bu da eğitimi veren kurum için yüksek bir başlangıç maliyeti demektir. 

4. Tüm bunlara ek olarak ayrıca uzaktan eğitim sisteminde ders verecek veya ders içeriği hazırlayacak yeterlilikte insan gücünün(öğretmenler, tasarımcılar vs.) bulunması gerekir. Teknik altyapı ile eğitmen kadrosu birbirinden farklıdır. Bu ikisini bir arada koordineli bir şekilde çalıştıracak deneyimli yönetim kadrosuna da ihtiyaç vardır.

5. Uzaktan eğitim, klasik eğitimden daha pahalıdır.

6. Uzaktan eğitimde, örgün öğretimde olduğu gibi laboratuar ortamında deney/uygulama yapma olanağı sunulamamaktadır.


Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

24 Nisan 2016 Pazar

Uzaktan Egitimin Bir Avantajı Var mı

2.5 Uzaktan Eğitimin Avantajları

Uzaktan eğitim kavramı 200 yıldan beri var olmasına karşın gerçek anlamı ve etkinliği ancak içinde bulunduğumuz çağda anlaşılabilmiştir. Bazı zorluklardan dolayı bir öğretim kurumuna devam edemeyen insanlarının uzaktan eğitim kurumlarına yönelmeleri, uzaktan eğitim için bir talep patlamasına yol açmıştır. Bu eğitim, günümüzde her kesimden insanın rağbet göstermesi ile önemli bir sistem haline gelmiştir. Son zamanlarda, birçok yüksek öğretim kurumları bünyelerinde uzaktan eğitim merkezleri açmışlar ve örgün eğitim programlarını uzaktan eğitim sistemine uyarlamaya başlamışlardır. Özellikle internet teknolojilerinin eğitim/öğretim için gerekli olan bilgi transferini kolaylaştırmış olması, insanların bu eğitim sistemini tercih etmeleri için temel neden olmuştur. Uzaktan eğitim, örgün eğitime nazaran hem eğitim veren kurum için hem de bu hizmetten faydalanmak isteyen insanlar için pek çok avantajlar sumaktadır. Bunlar şöyle sıralanabilir.

1- Artan öğretim fırsatları,
2- Farklı coğrafik konumlarda daha fazla kişiye ulaşarak, gereken öğretimin zamanında verilmesi,
3- Çok farklı yerlerde olabilen konu uzmanlarına, gerçek zamanda erişim,
4- Öğretim ortam ve metotlarında artan esneklik,
5- Öğretmen ve öğretim kaynaklarının paylaşımındaki artış,
6- Öğrencinin çalıştığı yerde eğitilmesinin sağlanması ile artan üretkenlik,
7- Öğrenci yolculukları ve masraflarında azalma,
8- Öğretim ortamı ile gerçek çalışma ortamı arasındaki farklılığın azalması,
9- Öğretim masraflarında önemli ölçüde azalma,
10- Öğrencilerin derslere erişimini kolaylaştırma,
11- Bilgiye erişimin hızlanması ve kolaylaşması,
12- Öğretim materyalinin dağıtımının hızlanmasıdır[4].

Uzaktan eğitim sisteminde üretilen ders materyalleri standardize edilmiştir.  Bunun üç faydası vardır. Birincisi, bir kurumda üretilen ders içeriğinin aynı standardı kullanan diğer eğitim kurumları arasında paylaşılabilir ve sorunsuz olarak kullanılabilir olmasıdır. Bu sayede ilgili materyalin hazırlanması için harcanan zamandan tasarruf sağlanır. İkincisi, standart bir paket haline getirilmiş olan ders içeriğinin bir sonraki eğitim dönemlerinde de kullanılabilir olmasıdır.

Dijital ortamda üretilen materyal için  yazılım sürümü haricinde eskime yıpranma gibi sorunlar olmadığından bir kez üretilen içerik tekrar tekrar kullanılabilir. Üçüncüsü ise bilgisayar ortamında üretilen içeriğin yeni gelişmelere, güncel olaylara uygun olarak değiştirilmesi, yenilenmesi veya geliştirilmesinin mümkün olmasıdır. Bu iş için yazılan tasarım programları eğitimcinin ders içeriğini geliştirmesi için gerekli olan esnekliği ve olanağı sağlar. Yine aynı şekilde geliştirilen bu içerik standart bir paket haline getirilebilir.

Ders içeriklerinin yenilenebilir, yinelenebilir ve taşınabilir olması uzaktan eğitimin eğitimciler için sunduğu en önemli avantajdır. Aynı durum eğitim hizmetini alan kişiler için de geçerlidir. Eğitim aldıkları kurumun sitesinden ders içeriklerini bilgisayarına indirebilir, dilerse akıllı cep telefonu ya da tablet bilgisayar gibi taşınabilir araçlar yardımıyla istediği zaman istediği yerde konu tekrarı yapabilir. Uzaktan eğitimin temel amacı ve en önemli avantajı zamandan ve mekandan bağımsız bir şekilde eğitimin yapılabilmesidir.




Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

Kaynaklar:

[4]    http://lms.firat.edu.tr  (10 Ocak 2012).

22 Mart 2016 Salı

Uzaktan Eğitim Nasıl Uygulanır

2.4 Uzaktan Eğitim Nasıl Yapılır?


Öğrenci ile öğretmenin aynı fiziksel ortamda bulunma olanağının olmadığı durumlarda eğitim faaliyetlerinin devam edebilmesi, bu durumdaki öğrencilere eğitim hizmetlerinin götürülebilmesi için “uzaktan eğitim” yönteminin kullanılması gerekir. Uzaktan eğitim; öğrenci ve öğretmen arasında bilgi alışverişinin sağlanabileceği, iletişime olanak veren bir platform üzerinden yapılır.

 İlk zamanlarda uzaktan eğitim çalışmalarının yürütülebilmesi için gerekli iletişim mektupla yapılıyordu, iletişim platformu olarak sadece posta hizmetleri kullanılmaktaydı. Öğrenciler ders notlarını ve diğer evraklarını posta yoluyla alıyorlardı ve uzaktan eğitim sadece birkaç tane eğitimcinin kişisel çalışmaları ile yürütülüyordu. Bu eğitim şeklinin insanların hayatlarında önemli bir boşluğu doldurduğunun anlaşılması üzerine, mektupla uzaktan eğitim, kurumsallaşma yoluna gitmiştir. Mektupla eğitim veren ilköğretim, lise, üniversite seviyesinde kurumlar açılmıştır. Uzaktan eğitimin tarihsel gelişimine bakıldığında; uzaktan eğitim kurumlarının, gelişen teknoloji ile radyo ve televizyon üzerinden yapılan eğitim yayınları desteğinde, verdikleri eğitimlerin kalitesini ve etki alanını arttırdıkları söylenebilir. Buraya kadar anlatılan yöntemlerle yapılan uzaktan eğitim hizmeti şu şekilde verilir: 

i) Eğitim materyalleri (kitaplar, ders notları, vs.) öğrencilere posta yoluyla ya da varsa bulundukları şehirlerdeki bürolar aracılığıyla ulaştırılır.
ii) Öğrenciler dersleri bu notlardan ve kurumun yaptığı radyo ya da televizyon yayınlarında takip ederler.
iii) Öğrenciler, eğitim veren kurumun belirleyeceği yer ve zamanlarda sınavlara tabi tutulurlar.
iv) Eğitim süresi biten ve başarılı olan öğrencilere eğitim veren kurumun yetkisi çerçevesinde diploma veya sertifika verilerek eğitim süreci tamamlanır.

Bu eğitim şekli her ne kadar özellikle çalışmak zorunda kalan insanların eğitim ihtiyaçlarını büyük ölçüde karşılasa da, eğitim açısından üç önemli eksiği vardır. Birincisi; öğrencinin öğretmenle sınıfta olduğu gibi iletişim kurma olanağı yoktur. Kitap ve ders notları haricindeki, radyo veya televizyon üzerinden yapılan eğitim çalışmaları, belirli saatlerde yayınlanan programlar halinde sunulmaktadır. Bu programları takip eden bir öğrenci ise, anlatılan dersi izlemekten ve kendince not tutmaktan başka bir şey yapamaz; soru sorma olanağı yoktur. İkinci olarak, aldığı dersin yayınlanma saatini kaçıran bir öğrencinin bunu telafi etme şansı çok azdır. Kurum tekrar yayını yapıyorsa o yayını beklemek zorundadır. Bunun haricinde eğitim yayınları bazı kayıt cihazları ile kaydedilip onlardan tekrar tekrar faydalanabilse de herkesin kayıt yapma olanağı olmayabilir. Üçüncü önemli eksiklik ise uygulamalı derslerin (laboratuar ya da atölye çalışmaları) uzaktan eğitim ile verilememesidir. Tüm bu eksikliklerine rağmen uzaktan eğitim, özellikle okula gitme imkanı olmayan insanların eğitim ihtiyaçlarını büyük oranda karşılamış; eğitim hizmetlerinin yürütüldüğü ülkelerin en uzak bölgelerine de ulaştırılmasında önemli bir rol oynamıştır.

Burada vurgulanmak istenilen durum, yakın zamana kadar uygulan klasik uzaktan eğitim faaliyetlerinin kısa bir açıklamasıdır. Günümüzde iletişimin vazgeçilmezi olan internet teknolojisi ile web sayfaları üzerinden her çeşit veri aktarımı mümkün olmaktadır. Buna bağlı olarak uzaktan eğitim hizmetleri artık, bu sayfalar üzerinden verilmektedir. Verilen eğitimle ilgili ders içerikleri bir editör programı yardımıyla hazırlanan web sayfasından yayınlanarak öğrencilere ulaştırılır. Gelişen internet teknolojileri bu ders içeriğinin hareketli resim, animasyon, ses ve video gibi bileşenler içermesine; ders içeriğinin öğrencilerle etkileşim kurarak ve konuların interaktif bir şekilde öğretilmesine olanak sağlar. Bu eğitim sisteminde, web üzerinden canlı video bağlantıları, video konferanslar ve sanal sınıflar gibi etkileşimli görsel sunumlar vardır. Ayrıca chat/sohbet odaları sayesinde karşılıklı anlık iletişim gibi pek çok olanak internet üzerinden öğrencilere sunulabilmektedir. Ders içeriklerinin hazırlanması, dağıtılması ve tekrar kullanımı amacıyla geliştirilen SCROM standardı ile sanal ortamda eğitim süreci büyük ölçüde düzene kavuşmuştur. Böylece uzakta eğitim sistemlerinde kargaşa ve karışıklık ortadan kalkmıştır. 

Uzaktan eğitim, normal eğitim gibi kurumsaldır ve sistematik çalışır. Öğrencilere aynı normal okullarda olduğu gibi derslere devam zorunluluğu getirilebilir. İnternet üzerinden yapılan uzaktan eğitimin en önemli farkı ders içeriklerinin tekrar kullanılabilmesidir. Öğrenciler kendi evlerinden ya da uygun başka herhangi  bir yerden bilgisayar veya mobil cihazlar üzerinden istediği zaman sisteme girip, eğitim faaliyetine katılabilirler. Ayrıca canlı ders anlatımları, video konferans uygulamaları ve final sınavlarının yapılması gibi durumlarda, eğitimi veren kurum, gerektiğinde zaman ve mekan sınırlaması getirebilir. 

Uzaktan eğitim, eğitim kurumları ve bireysel girişimcilerle hedef kitleyi oluşturan öğrenciler arasındaki mesafeyi kapatır; hem kişilere hem de kurumlara uzak yerlerdeki insanlara eğitim hizmeti götürme ve etki alanını genişleterek daha çok kişiye zahmetsizce ulaşma olanağını sağlar. Bununla beraber uzaktan eğitim, özellikle kurumlar için pahalı altyapı gereksinimleri ve konusunda uzman teknik personel istihdamı gibi çözülmesi zaman alan sorunları da yanında getirmektedir. Buradan da anlaşılacağı üzere bu eğitim şeklinin avantajlarının yanında bazı dezavantajları da vardır. 



Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

Türkiye'de İlk Uzaktan Eğitim Calışmaları

2.3 Ülkemizde Uzaktan Eğitim

Türkiye’de uzaktan eğitim ilk olarak 1927 yılında eğitim sorunlarının görüşüldüğü bir toplantıda ele alınmış fakat sadece fikir bazında kalmış ve uygulamaya geçirilememiştir. Konu ile ilgili tartışmalar 1950’li yıllara kadar devam etmiştir. Türkiye’de uygulanan uzaktan eğitimin tarihi gelişimi ise aşağıdaki gibi sıralanabilir.


i) 1927: Dönemin Milli Eğitim Bakanı Mustafa Necati tarafından konunun tartışılması,
ii) 1956: Ankara Üniversitesi Hukuk Fakültesi, Banka Ticaret Hukuku Araştırma Enstitüsünde başlaması,
iii) 1961: Milli Eğitim Bakanlığı bünyesinde Mektupla Öğretim Merkezi kurulması,
iv) 1966: Mektupla Öğretim Merkezi’nin genel müdürlük olması,
v) 1975: Yay-Kur eğitimleri ile uzaktan eğitim çalışmalarının geliştirilmesi,
vi) 1978: Açık üniversite kurulmasına karar verilmesi,
vii) 1981: Anadolu Üniversitesi Açıköğretim Fakültesi’nin açılması,
viii) 1981: Anadolu Üniversitesi TRT işbirliği ile okul televizyonu kullanılarak eğitim vermeye başlanması,
ix) 1992: Milli Eğitim Bakanlığı bünyesinde Açıköğretim Lisesi’nin açılması,
x) 1998: ODTÜ’de İnternet ile Eğitim kullanılarak IDEA Paketi uygulamasının başlatılması[3].

Ülkemizde uzaktan eğitim düşüncesi, cumhuriyetin ilanından kısa bir süre sonra ortaya atılmış olmasına rağmen bu yönde çalışmalara 1950’li yıllardan sonra başlanabilmiştir. İlk olarak mektupla başlayan uzaktan eğitim çalışmaları Anadolu Üniversitesi Açık Öğretim Fakültesi’nin açılması ve TRT’nin altyapısının kullanılması ile radyo ve televizyon üzerinden devam etmiştir. 1998 yılında ODTÜ’nün başlattığı çalışma ile internet ortamına taşınan uzaktan eğitim, bugün pek çok üniversitenin kendi bünyelerinde başlattıkları uzaktan eğitim programları ile başarılı bir şekilde devam etmekte ve gelişim sürecini sürdürmektedir.

Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

Kaynaklar:

[3]    http://tr.wikipedia.org/wiki/Uzaktan_eğitimin_tarihsel_gelişimi. (10 Ocak 2012)

31 Ocak 2016 Pazar

Uzaktan Eğitimin Tarihi

2.2 Uzaktan Eğitimin Tarihçesi


Her ne kadar kesin bir başlangıç tarihi belirlenemese de uzaktan eğitim uygulamalarının organize bir yapıda kullanımına 18. yüzyılda rastlanmaktadır. Özetle maddeler halinde incelenirse; uzaktan eğitim uygulamalarının tarihsel gelişimini aşağıdaki şekliyle sıralamak mümkündür:

i) 1728: İlk uzaktan eğitim çalışması Boston gazetesinde “Steno Dersleri” ile başlamıştır.
ii) 1833: İsveç Üniversitesinde Hanımlara “Mektupla Kompozisyon Dersleri” verilmiştir.
iii) 1840: Stenografi eğitimcisi olan Isaac Pitman İngiltere Bath’da mektupla steno öğretmeye başladı. Pitman genellikle ilk modern eğitimci olarak bilinir.
iv) 1892: Chicago Üniversitesi’nde ilk Mektupla Eğitim Bölümü açılmıştır.
v) 1898: İsveç’te kurulan ve uzaktan eğitimde dünyanın önde gelen kurumlarından olan “Hermands” kurulmuştur. Bu kurumda dil eğitimi yapılmıştır.
vi) 1906: Yazışmalı İlköğretim ABD’de başlamıştır.
vii) 1919: ABD’de ilk eğitim ile ilgili radyo istasyonu kurulmuştur.
viii) 1920: ABD’de 176 tane eğitim amaçlı radyo istasyonu kurulmuştur.
ix) 1923: ABD’de Mektupla Lise Eğitimi başlamıştır.
x) 1932-1937: ABD eğitim televizyonu yayınları IOWA Üniversitesi’nde başlamıştır.
xi) 1939: Fransa’da savaş yıllarında uzaktan eğitim ile öğrencilerin eğitimi sağlanmıştır.
xii) 1960: İngiltere’de ilk açık öğretim veren üniversite olan “British Open University” açılmıştır[3].

Bu tarihsel sıralamadan da görüldüğü gibi uzaktan eğitim; ilk olarak, kişisel gelişim sürecinde insanlara meslek kazandırmak amacıyla uygulanmaya başlanmıştır. Bireysel çabalarla başlayan uzaktan eğitim çalışmaları, zamanla önemli eğitim kurumlarında kendine yer edinmiş; mektupla öğretim şeklinde verilen eğitimler, zamanın teknolojik olanakları ile radyo ve televizyondan da faydalanılarak daha geniş kitlelere ulaşmıştır. İngiltere’de British Open University’in açılmış olması, insanların bu eğitim türüne ne kadar ilgi gösterdiğinin; bu eğitim şeklinin toplumda önemli bir boşluğu doldurduğunun kanıtıdır. Önceleri mektupla başlayan, radyo ve televizyon yayınları ile etki alanının genişleterek devam eden uzaktan eğitim çalışmaları, bugün internet üzerinden devam etmektedir.



Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

Kaynaklar:

[3]    http://tr.wikipedia.org/wiki/Uzaktan_eğitimin_tarihsel_gelişimi. (10 Ocak 2012)

Uzaktan Eğitim Nedir Tam Olarak?

UZAKTAN EĞİTİM


2.1 Uzaktan Eğitim Nedir?


Öğrenci ve öğretmenin, eğitim-öğretim faaliyetlerinin gerçekleştirilebilmesi için, öğretim materyalinin sunulabileceği uygun bir sınıf ortamının bulunması gerekir. Sınıf ortamı, öğrenci ve öğretmen arasında yüz yüze iletişimin kurulmasını ve bilginin sağlıklı bir şekilde aktarılmasını sağlar. Öğrenci, öğretmenle aynı fiziksel ortamda değilse, yüz yüze iletişim olanağı ortadan kalkar. Bu durumda eğitime devam edilebilmesi için, öğretmen ve öğrenci arasındaki bilgi aktarımı uzak mesafe iletişim araçları ile sağlanır. Bu araçlar zamanın şartlarına göre çeşitlilik gösterir. Önceleri; posta, radyo, televizyon gibi iletişim araçları ile yapılan bilgi aktarımı, internet teknolojisi ile farklı boyutlara taşınmıştır. İnternet, bilgisayar kullanıcılarına, bilgi paylaşımını etkileşimli bir şekilde gerçekleştirme olanağı sunmuştur. Kullanılan teknoloji ne olursa olsun temel hedef, eğitim kurumunun bulunduğu yerden uzaktaki insanlara da eğitim-öğretim hizmeti verebilmesidir. Uzaktan eğitim kavramı bu temel hedef üzerine kurulmuştur.

Özgün bir tanım yapmak gerekirse uzaktan eğitim; en yalın tanımıyla öğretici ve öğrencilerin aynı fiziksel ortamı paylaşmaksızın hatta bazı çalışmalarda aynı zaman dilimini de paylaşmadıkları, teknolojik araçların işe koşulması yoluyla eğitim-öğretim-öğrenim çalışmalarının belirli bir program çerçevesinde sürdürülebilmesidir[1].

Uzaktan eğitimde amaç daha geniş kitlelere eğitim hizmeti sunmak; eğitimde fırsat eşitliğini sağlamaktır. Geleneksel eğitim yöntemlerinde olduğu gibi, organize edilmiş bir yapıya sahiptir ve teknolojik olanaklardan sonuna kadar faydalanan bir eğitim planlıdır. Geleneksel eğitimden farkı; öğrenciye, öğretmenle aynı ortamda bulunmaksızın eğitim alma olanağı sunmasıdır. Buna ek olarak öğrenci, daha önceden filme alınmış dersleri sonradan tekrar tekrar izleme olanağına da sahiptir. Bu sayede zaman kısıtlamasından da kurtulmuş olur; istediği eğitimi eşzamansız(asenkron) olarak da alabilir.

En geniş tanımıyla uzaktan eğitim geleneksel öğrenme-öğretme yöntemlerindeki sınırlılıklar nedeniyle sınıf içi etkinliklerin yürütülme olanağı bulunmadığı durumlarda eğitim çalışmalarını planlayanlar ve uygulayanlar ile öğrenenler arasında iletişim ve etkileşimin özel olarak hazırlanmış öğretim üniteleri ile çeşitli ortamlar yoluyla belirli bir merkezden sağlandığı bir öğretim yöntemidir [2].



Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

Kaynaklar:
[1]    Gülnar, B., Bilgisayar ve İnternet Destekli Uzaktan Eğitim Programlarının Tasarım, Geliştirme Ve Değerlendirme Aşamaları (Suzep Örneği), Selçuk Üniversitesi Sosyal Bilimler Enstitüsü Dergisi, Sayı: 19, 259-271, (2008)

[2]    Kazu,Y. İ., Özdemir, O., 2002, Teknik Öğretmen Adaylarının Uzaktan Eğitimle İlgili Görüş ve Beklentileri (Fırat Üniversitesi Örneği) Fırat Üniversitesi Enformatik Bölümü, XI. Eğitim Bilimleri Kongresi,Yakındoğu Üniversitesi Lefkoşa, KKTC. (23-26 Ekim 2002).

Uzaktan Eğitime Başlamak

Bu yazı dizisinde Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması adlı tez çalışmamın metnini sizlerle paylaşacağım 

Giriş


Eğitim tarih boyunca tüm toplumların ortak sorunu olmuştur. En ilkel toplumdan, en gelişmiş topluma kadar herkes bu durum ile uğraşmak zorunda kalmıştır. Gençlerin eğitilmesi ve topluma yararlı hale getirilmesi amacıyla, kendi teknolojik olanaklarına ve yaşam biçimlerine göre çeşitli kurumlar meydana getirmişlerdir. Günümüzde bu kurumlara okul adı verilmektedir. Dünyanın her yerinde ve her dilde okul kelimesine karşılık gelen bir sözcük mutlaka kullanılmaktadır.

Uzun yıllar boyunca gençlerin eğitilmesini üstlenmiş olan bu kurum; derslikler, okul yönetimi, öğrenci ve öğretmenlerden oluşan klasik yapısını korumakta ve aynı şekilde kuruluş amacına hizmet etmeye devam etmektedir. Bu kurumlarda eğitim ve öğretim işi öğretmenler tarafından, derslerin birebir öğrencilere aktarılması ile yapılmaktadır. Öğretmen ders içeriğini tahtaya yazmakta ve bu içerik ile ilgili ayrıntılı bilgileri sözlü olarak anlatarak konuyu işlemektedir. Bunların dışında dersin içeriğine göre çeşitli materyaller (örnek resimler, deney aletleri, vs.) kullanılmaktadır. Bu eğitim, yüzyıllardır süregelen klasik eğitim şeklidir.

Bilgisayarların günlük hayatta kullanıma geçmesi, her şeyi olduğu gibi eğitim sektörünü de etkilemiştir. Bilgisayar okur-yazarlığı artık vazgeçilmez olunca da okullarda ders olarak okutulmaya başlanmıştır. Gelişen teknoloji ve haberleşme olanakları ile beraber bilgisayar, sadece okullarda okutulan bir ders olmakla kalmayıp diğer derslerin yapıldığı bir ortam haline gelmiştir. Özellikle gelişmiş toplumlarda, dersler bilgisayar ortamında verilmeye başlanmıştır.

Bilgisayar ve internet teknolojilerinin gelişmesine paralel olarak, hızlı ve sağlıklı iletişim imkanları sağlanmıştır. İnternet adeta ülkeler arasındaki sınırları kaldırmış ve insanlara birbirleri ile kolaylıkla iletişim kurabilme olanağını sunmuştur. Tüm bu gelişmelerden eğitim kurumları da payını almıştır. İnternet bağlantısında yüksek hızlara ulaşılması, eğitim hizmetini sınıf ortamına bağlı olmaktan kurtarmış, bu hizmeti bilgisayarın ve internet bağlantısının olduğu her yere ulaştırma olanağını sağlamıştır.

Bu gelişmelerle beraber yeni bir kavram olan “Uzaktan Eğitim” ortaya çıkmıştır. Aslında uzaktan eğitimin tarihi çok daha eskilere dayanmaktadır. Daha önceleri posta, radyo veya televizyon yoluyla da uzaktan eğitim çalışmaları yapılmış ve mümkün mertebede başarı sağlanmıştır. Ancak bu şekilde bir eğitim karşılıklı iletişim ve etkileşimden yoksundur. İnternet üzerinden bilgisayar ortamında verilen eğitim ise öğrenci, öğretmen ve ders materyali arasındaki etkileşim sorununu çözmüştür. Gelişen teknoloji derslerin internet üzerinden anlık olarak takip edilmesine olanak sağlamıştır.

Bilgisayarın günlük hayatta kullanılmaya başlanması, beraberinde bu makineleri kullanmaya yönelik işletim sistemi denen programların yazılması ihtiyacını ortaya çıkardığı gibi, internet aracılığıyla yapılan uzaktan eğitimde de öğretmen, öğrenci ve ders materyali arasındaki etkileşimi sağlayacak ortak bir platformun, bir ara yüzün yazılması ihtiyacını doğurmuştur. Bu amaçla yazılan programlar tüm dünyada Learning Management System (LMS) adıyla anılmaktadır. Dilimize “Öğrenme Yönetim Sistemi” olarak çevirebileceğimiz bu programların piyasada pek çok çeşidi bulunmaktadır. Bu programlardan bazıları ücretli olup kullanmak için telif hakkı çerçevesinde belirlenen ücretin ödenmesi gerekmektedir. Bunun yanında ücretsiz olan LMS programları da bulunmaktadır. Günümüzde pek çok üniversitenin yanında, özel şirketler de şirket içi eğitimlerini verirken LMS’den faydalanmaktadır. LMS’ e olan bu ilgi, onun önemini daha da arttırmaktadır.

Bu tezin temel amacı, günümüz koşullarında giderek önemi artan, uzaktan eğitim kavramını kısaca tanıtmak ve bu eğitim hizmetinin internet üzerinden verilmesini sağlayan açık kaynak kodlu LMS yazılımlarını inceleyerek, bunları kendi içinde karşılaştırmaktır. Bunu yapmak için uzaktan eğitim çalışmalarında en çok tercih edilen LMS yazılımları seçilmiştir.

Bu tez şu şekilde planlanmıştır. Birinci bölümde, uzaktan eğitim konusuna kısa bir giriş yapılmıştır. İkinci bölümde, uzaktan eğitim kavramı, tarihsel gelişimi ve uygulanma biçimleriyle birlikte ayrıntılı olarak ele alınmıştır. Üçüncü bölümde, Öğrenme Yönetim Sisteminin ne olduğu, nasıl çalıştığı ve çeşitleri anlatılmıştır. Dördüncü bölümde, açık kaynak kodlu yazılımlar hakkında bilgiler verilmiş ve açık kaynak kodlu LMS yazılımlarının üretilmesinde kullanılan teknolojilerden bahsedilmiştir. Beşinci bölümde, LMS yazılımları için bir standart haline gelen Paylaşılabilir İçerik Nesne Referans Modeli(Sharable Content Object Reference Model-SCROM) kavramı işlenmiştir. Tezin altıncı bölümünde, açık kaynak kodlu LMS yazılımları, çalışılan platform, platform geliştirme ortamı, sistem yönetimi ve kullanıcı yetkilendirilmesi, ders geliştirme ortamı, öğrenme ortamı, istatistik ve değerlendirme biçimi yönünden ele alınarak incelenmiştir. Son bölümde ise LMS yazılımlarının kendi aralarında genel bir karşılaştırılması yapılmıştır.



Turgut ARSLAN
Uzaktan Eğitim ve Öğrenme Yönetim Sistemlerinin Karşılaştırılması, Tez çalışması, Danışman: Doç.Dr. Seyfettin Dalgıç
Trakya Üniversitesi 2013

20 Temmuz 2014 Pazar

Konsol Ortamında Çalışan Basit Bir Java if Uygulaması




Programın açıklamalı kodları aşağıdaki gibidir.

package basitifuygulamasi; //uygulama paketimizin adı
import java.util.Scanner; // klavyeden girilen veriyi okutan sınıf import ediliyor

public class javaifuyg { // classımızınn başladığı yer
   
    public static void main(String[] args){ //programın çalıştığı ana metod başlıyor
       
        Scanner sayiGir = new Scanner(System.in); //veri okutacak nesne tanımlanıyor
       
        int sifre=69, tahmin; // değişkenler tanımlanıyor
       
        System.out.println("Şifreyi tahmin et bakalım"); //ekranda görünecek mesaj
       
         tahmin=sayiGir.nextInt(); //kullanıcıdan alınan veri değişkene aktarılıyor
 
         if(tahmin==sifre){ //değişkendeki veri sifre değişkeninin değeri ile kıyaslanıyor
       
        System.out.println("Vaay bee! şifreyi nasıl da bildin?"); //sonuç doğru ise yayınlanacak mesaj
    }else{ //değilse demek       
System.out.println("Bilemedin akıllım!"); //sonuç yanlış ise yayınlanacak mesaj
           System.exit(0); //program duruyor
    }
    }

}

İnfial Nedir? Ne Demektir?




Özellikle televizyonlarda sık sık infial kelimesine rastlarız. Kötü bir olayın halkta uyandırdığı infial şeklinde anonsta bulunur spiker. Hep sorarız kendimize infial ne demek? diye. Ama sözlüğe bakmak aklımıza gelmez bir türlü. arkadaşımıza sorarız o da bilmiyordur bizim gibi. Neyse kötü bişey heralde deriz geçeriz. Ben de bu kervanın bir üyesi olarak en sonunda bu kısır döngüye son vermeye karak verdim ve Türk Dil Kurumu'na sordum sizin için(Kapılarına kadar gitmedim internetten araştırdım. Aynen sizin şu an yaptığınız gibi).
İnfial sözcüğünün anlamı TDK Sözlüğüne göre,

a. (infia:li) esk. 1. Birine içerleme, gücenme, kızgınlık duyma. 2. Herhangi bir şeyden etkilenme. 3. fel. Edilgi.

demektir.


Oh be artık rahatladım. umarım siz de rahatlamışsınızdır.

17 Şubat 2014 Pazartesi

Java Parametresiz Metod Kullanımı

Aşağıdaki kodlar kullanıcıya konsol ortamında ismini sorar ve klavyeden girilen kelimeyi yine konsol ortamında yazdırır. Program sadece tek bir class'tan oluşmaktadır. Program başlatıldığında "isim" adında String türünden bir değişken oluşturulur. Bu değişkene "isimGir()" adlı parametresiz bir metodun döndürdüğü değer atanır ve sonuç konsol ortamında yazdırılır.

isimGir() metodu kendi bünyesinde "adi" isimli String türünden bir değişken oluşturur. Sonra Scanner sınıfından "yazi" adlı bir nesne oluşturur ve bu nesne ile klavyeden girilen değerleri nextLine() metodu ile okutarak "adi" değişkenine aktarır. "adi" değişkeninin taşıdığı değer return komutu ile isimGir() metodunun çağırıldığı yere gider ve "isim değişkenine atanır. Son olarak "isim" değişkeninin değeri konsol ortamında ekrana basılır.

Program gördüğünüz gibi oldukça basit ama Java Programlamaya Yeni Başlayanlar için faydalı olacağını düşünüyorum. İşte yukarıda bahsettiğimiz programın nacizane kodları.

anaSinif.java

import java.util.Scanner;
public class anaSinif {
    public static void main(String args[]){
        String isim;
        isim=isimGir();
        System.out.println("Adınız : "+isim);
           
    }
    public static String isimGir(){
        String adi;
        Scanner yazi = new Scanner(System.in);
      System.out.println("Lütfen bir isim giriniz");   
      return adi=yazi.nextLine();
    }
}

24 Aralık 2013 Salı

Java Inheritance(Kalıtım) Uygulaması (Java extends Örneği)


Daha önce katıldığım java programlama kursunda yaptığımız bir (inheritance)kalıtım uygulaması. Programda tanımlanan tüm classlar personel sınıfından extends komutu ile türetilmiştir.

personel.java

import java.util.Locale;

public class personel {
    protected String ad;
    protected String soyad;
    public String tcKimlik;
    private Double sabitMaas=0.0;
   
    public personel(){
       
    }// defalut constructor
    public personel(String persAd,String persSoyad,double persMaas){
        ad=persAd;
        soyad=persSoyad;
        sabitMaas=persMaas;
        }
    public void setAd(String personelAd)// isim formatı:
    {// ad parametresinin sağındaki ve solundaki boşlukları alıp isim StringBuilder nesnesine ata.
        StringBuilder isim = new StringBuilder(personelAd.trim());
        if(isim.length()==0){// eğer isim nesnesinin uzunluğu 0 ise boş isim girilmiştir.
            System.out.println("Ad kısmı boş. Lütfen bir isim giriniz");
            }else{// isim nesnesinin ilk harfi büyük diğerleri küçük olarak şekillendir.
                for(int i=0;i<isim.length();i++){
                    if(i==0) isim.setCharAt(i, Character.toUpperCase(isim.charAt(i)));                   
                    }//for döngüsü sonu
                this.ad=isim.toString();
            }//else sonu
       
    }//setAd metod sonu
    public String getAd(){return this.ad;}
    public void setSoyad(String personelSoyad){
        personelSoyad=personelSoyad.trim();
        if(personelSoyad.length()==0){//soyad kısmının boş olup olmadığı kontrol ediliyor
            System.out.println("Soyad kısmı boş. Lütfen personel soyadını yazınız.");
        }else{// soyisim nesnesinin tümü büyük harf olacak
            this.soyad=personelSoyad.toUpperCase(new Locale("TR"));
        }//else sonu
    }
    public String getSoyad(){
        return soyad;
    }// getSoyad sonu
    final public void setTcKimlik(String tckimlik){
        this.tcKimlik=tckimlik;
    }
    public void setMaas(double maas){
        sabitMaas=maas;
    }
    public double getMaas(){return sabitMaas;}
    public double hakEdis(){
        System.out.print("Personel Hakediş:");
        return sabitMaas;
    }
}// personel classs sonu



SatisPersoneli.java


public class SatisPersoneli extends personel{
    public double satisTutari;
    public double primYuzdesi;
    public SatisPersoneli(){}
    public SatisPersoneli(String ptpAd,String ptpSoyad,double satisTutari,double prim){
        super(ptpAd, ptpSoyad, 500.0);// bu stırda satış personelinin bilgileri personel class'ındaki personel isimli metoda bilgi gönderir.
        this.satisTutari=satisTutari;
        this.primYuzdesi=prim;
    }// SatisPersoneli sonu
    public void setSatistutari(){
        if(satisTutari>=0)
            this.satisTutari=satisTutari;
        else
            System.out.println("tutar pozitif olmalı");
    }// setSatistutari sonu
    @Override
    public double hakEdis(){
        System.out.println("Satıi personeli hakediş:");
        return super.getMaas()+(this.satisTutari*(1+primYuzdesi));
    }

}

PartTimePersonel.java


public class PartTimePersonel extends personel{
    public int mesaiSaat;
    public double saatUcreti;
    public PartTimePersonel(){
        super();
    }
    public PartTimePersonel(String ptpAd,String ptpSoyad, int ptpMesai, double ptpSaatUcret){
        super(ptpAd,ptpSoyad,0.0);
        this.mesaiSaat=ptpMesai;
        this.saatUcreti=ptpSaatUcret;
    }//PartTimePersonel sonu
   
    public void setMesaiSaat(int saat){
        if(saat>=0)
            mesaiSaat=saat;
        else
            System.out.println("Mesai saati pozitif olmalı");
    }
    @Override
    public double hakEdis(){
        System.out.println("Pat Time Personel hakediş :");
        return saatUcreti*mesaiSaat;
    }

}

Stajyer.java


public class Stajyer extends personel{

}

PersonelTakip.java


public class PersonelTakip {
    public static void main(String[] args){
        personel isci,partIsci,stajyerIsci;
        isci = new personel("Kamil","turhan",1000.0);
        partIsci = new PartTimePersonel("Yusuf","eren",45,20.0);
        stajyerIsci = new Stajyer();
        personel satisIsci = new SatisPersoneli("haken","kart",40000.0,0.2);
       
        System.out.println(isci.hakEdis());
        System.out.println(partIsci.hakEdis());
        System.out.println(satisIsci.hakEdis());
    }

}

21 Eylül 2013 Cumartesi

Java Applet Örneği

Aşağıdaki kodlar Applet ortamında bir pencere çizer ve içinde 1 de 10'a kadar olan tamsayıları sıralar. Programda döngüyü kurmak için do-while kodu kullanılmıştır. Bu bakımdan do-while döngüsü için de basit ve açıklayıcı bir örnek olduğu söylenebilir.

import java.awt.Graphics;
import java.applet.Applet;
public class javaApplet1 extends Applet{
    public void paint(Graphics g){
        int sayac=1;
        int x=25;
        String yazi;
        do{
           
            yazi=Integer.toString(sayac);// Bir değişkenin değerini Applet Viewer üzerinde görüntületebilmek için değişken tipinin String'e çevrilmesi gerekir.
            g.drawString(yazi, x, 25);
            x+=15;
            sayac++;
        }while(sayac<=10);
       
    }

}

29 Ağustos 2013 Perşembe

Java'da if Yapısı

Java if kullanımı

Aşağıdaki basit java programı klavyeden girilen değerleri parseDouble metodunu kullanarak double türüne parse edip çevirdikten sonra if komutu ile değerlendirip sonucu görüntüler. Klavyeden JOptionPane ile girilen değerler String türünde saklanır. Bu yüzden eğer bu değerlerle matematiksel işlem yapılacaksa integer, double ya da float türlerine çevrilmesi gerekir. String değerlerin sayısal değerlere çevrilmesi işlemine Java'da parse yapma işlemi denir.


import javax.swing.JOptionPane;

public class ifuygulama {
    public static void main(String args[]){
       
        double ogrenciNot;
       
        not=Double.parseDouble(JOptionPane.showInputDialog("0-100 arası not giriniz:"));
    if(ogrenciNot>=90)
    {JOptionPane.showMessageDialog(null,"A","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
    else if(ogrenciNot>=75)
    {JOptionPane.showMessageDialog(null,"B","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
    else if(ogrenciNot>=60)
    {JOptionPane.showMessageDialog(null,"C","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
    else if(ogrenciNot>=50)
    {JOptionPane.showMessageDialog(null,"D","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
    else if(ogrenciNot>=40)
    {JOptionPane.showMessageDialog(null,"E","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
    else
    {JOptionPane.showMessageDialog(null,"F","Öğrenci notu",JOptionPane.PLAIN_MESSAGE);}
   
    }

}

26 Mayıs 2013 Pazar

HTML5 Nedir?

HTML5 İle Web Tasarıma Girelim


Nedir HTML5 ?


HTML5 Logo Image
HTML5, temel olarak HTML dilinin yeni standardıdır.

Kim İcat Etti  HTML5'i?

Bu standart World Wide Web Consortium(W3C) ve Web Hypertext Application Technology Working Group (WHATWG)'in ortak çalışmasının sonucu olarak ortaya çıkmıştır.

HTML5'in Getirdiği Yenilikler Nelerdir?

Bu standart HTML CSS DOM ve Javascript teknolojilerinin etkin kullanılmasını temel alarak Web tasarıma hız, etkinlik ve sağlamık getirmiştir.

- HTML5 ile tasarlanan bir sitede etkileşimli grafik animasyon oluşturmak için Java applet ve flash gibi pluginlerin kullanılma zorunluluğu ortadan kalkmıştır.

- Hata ayıklama ve düzeltme sürece daha hızlı ve kolaydır.

- Evelce JavaSript ile yapılabilen bazı işler artık HTML5 tagları ile script kullanmadan browser'a yapıtırılabilir.

- HTML5 ile tasarlanan siteler PC, iPad, TabletPC gibi farklı ortamlarda da çalışabildiğinden taasarım ve üretim süreci kolaylaşmış ve hızlanmıştır.

HTML5 Site Nasıl Tanımlanır?


Bir siteyi HTML5 olarak tanımlamak için HTML kodlarının en başına sadece <!DOCTYPE html> yazmak yeterlidir. Bu tag tarayıcıya sitenin bir HTML5 sitesi olduğunu ve kodların  bu standarda göre yorumlanacağını söyler.

Temel HTML5 sayfa kodlaması ise şu şekildedir:

<!DOCTYPE html>
<html>
        <head>
                  <title>Sayfa Başlığı</title>
        </head>

<body>

Sayfa İçeriği

</body>

</html>

HTML5 ile web tsarım daha esnek ve zevkli bir hale geldi. Özellikle Javascriptle 2D, 3D animasyonlar üretmek de dahil pek çok yeteneği olan <canvas> elemanı Front-End Developer'ların gözdesi olacak.

24 Mayıs 2013 Cuma

HTML5 Destekli Tagların Listesi


HTML5 Teknolojisi'nin Desteklediği Tüm Tag'lar

HTML5 Web dünyasının yeni standardı... HTML5 teknolojisi ile artık daha canlı ve daha güzel. HTML5 World Wide Web Consortium (W3C) ve Web Hypertext Application Technology Working Group (WHATWG)'unun ortak çalışmasının bir ürünüdür. Bu standat ile birlite web sayfalarına canlılık getiren yeni taglar tanımlanmış ve artık web tasarımda pek kullanılmayan bazı taglar yürürlülükten kaldırılmıştır.

HTML5'in desteklemediği taglar:

HTML5 standardı, <acronym>, <applet>, <basefont>, <big>, <center>, <dir>, <font>, <frame>, <frameset>, <noframes>, <strike> ve <tt> taglarını artık desteklememektedir.

HTML5 ile gelen yeni taglar:
<article>, <aside>, <basefont>, <audio>, <bdi>, <canvas>, <command>, <datalist>, <details>, <dialog>, <embed>, <figure>, <figcaption>, <footer>, <header>. <hgroup>, <keygen>, <mark>, <meter>, <nav>, <output>, <progress>, <rp>, <rt>, <ruby>, <section>, <source>, <summary>, <time>, <track>, <video> ve <wbr> taglarıdır.


HTML5'in desteklediği tagları ve ne işe yaradıklarını aşağıda sıralıyorum umarım hepimiz için aydınlatıcı bir HTML5 referansı olur.



<!--...--> : Yorum satırı tanımlar

<!DOCTYPE > : Doküman tipini tanımlar

<a> : Bağlantı oluşturur

<abbr> : Kısaltma yapmak için kullanılır (HTML, XML, WYSIWYG gibi)

<address > : Belgeye iletişim ya da site sahibi ile ilgili blgileri koymak için kullanılır

<area> : image-map içinde bir alan tanımlar

<article> : Makale görüntülemek için bir alan tanımlar

<aside> : Sayfa içeriği içinde bir bölüm tanımlar

<audio> : Ses içeriği oluşturur

<b> : Yazıyı kalın yapar

<base> : Sayfa içinde tanımlanan URL'ler için bir temel adres tanımlar

<bdi> : çift yönlü yazı alanı tanımlar

<bdo> : Yazı yönünü ters çevirir

<blockquote > : Alıntı yaparken kullanılır

<body> : Tüm Döküman içeriğini kapsayan temel tag

<br> : Bir satır boşluk bırakır

<button> : Bir düğme oluşturur

<canvas> : Script ile kontrol edilebilen bi grafik çizim alanı tanımlar

<caption> : Table elemanı için başlık tanımlar

<cite> : İtalik başlık tanımlar

<code> : Metne bilgisayar kodu formatı verir

<col> : <col> elemanı ile birllikte tablo sütunlarını özelleştirmek için kullanılır

<colgroup> : Tablo sütunlarını formatlar

<command> : Bir buton oluşturur(Browserlar desteklemiyor şimdilik)

<datalist> : Kendinden filtreli açılır liste elemanı


<dd> : Definition list için bir eleman tanımlar.

<del> : Metin üzerine çizgi çizer.

<details> : Metin üzerine tıklandığında gizlenmiş olan diğer bir metinin görünmesini sağlar.

<dfn> : Metni İtalik yapar

<dialog> : Kutucuk görüntüler

<div> : Sayfada bir bölüm oluşturur

<dl> : Definition list tanımlar

<dt> : Definition list için bir eleman tanımlar.

<em> : Eğik yazı oluşturur

<embed> : HTML dışı uygulamaları (swf gibi) çalıştıran bir alan tanımlar

<fieldset> : form içindeki elemanları sarmak için kullanılır.

<figcaption> : <figure> elemanı içine başlık metni tanımlamada kullanılır.

<figure> : İçeriği sarmalar. Kendine özgü margin değeri vardır. içine yazdığınız içeriği sayfa elemanlarından ayırır.

<footer> : Sayfada CSS kullanmadan footer oluşturur

<form> : Form alanı oluşturur

<h1>, <h2>, <h3>, <h4>, <h5>, <h6> : Sayfaya başlık metni eklerler Sayı değeri büyüdükçe başlığın puntosu küçülür.

<head> :  Sayfada üst kısımda özel bilgi alanı oluşturut burdaki içeriği kullanıcılar görmez.

<header> : Sayfaya CSS kullanmadan header kısmı ekler

<hgroup> : <h1>, <h2>, <h3>, <h4>, <h5>, <h6> elemanlarını gruplar.

<hr> : Sayfaya yatay çizgi çizer.

<html> : HTML sayfasının kök elemanı. tüm içeriği kapsar

<i> : İtalik metin oluşturur

<iframe> : ifame nesnesi oluşturur(iframe içinde başka bir web sayfası görüntülenir)

<img> : Resim eklemek için kullanılır.

<input> : Buton metin kutusu gibi form elemanlarını tanımlamak için kullanılır

<ins> : Metnin altını çizen HTML tagı

<kbd> : metin alanı tanımlar

<keygen> : formlarda kullanılır şifrelemek için kullanılır

<label> : input elemanlarını etiketlemek için kullanılır

<legend> : <fieldset> ile tanımlanan elemanlara başlık oluşturur.

<li> : Liste elemanı tanımlar

<lik> : HTML dokumanına stil ya da script dosyaları bağlamak için kullanılır

<map> : Özellikle resim elemanlarında özel bölgeler tanımlamak için kullanılır.

<mark> : Metni işaretlemek için kullanılır.

<menu> : command elemanlarının listelenmesinde oluşan bir menü tanımlar şu anlık browser desteği yok

<meta> : Web sayfaları için üst veri tanımlar

<meter> : Web sayfası içinde progressbar benzeri bir eleman tanımlar ,nernet explorer desteği yok

<nav> : CSS kullanmadan navigasyon menüsü oluşturur

<noscript> : Browser Javascript desteklemediğinde uyarı mesajı çıkarmak için kullanılır

<object> : Sayfa içinde gömülü olarak .swf gibi nesneleri görüntülemek için kullanılır

<ol> : sayfaya 1, 2, 3 gibi sıralı liste eklemek için kullanılır

<optgroup> : açılır menu elemenlarını gruplamak için kullanılır.

<option> : Açılır menuye eleman eklemek için kullanılır

<output> : Hesaplama sonucunu görüntülemek için kullanılır.

<p> : Sayfaya paragraf eklemek için kullnılan HTML tagı

<param> : Object nesnesi için parametre tanımlar

<pre> : Önceden biçimlendirilmiş bir metin tanımlar

<progress> : Sayfaya bir progress bar eklemek için kullanılan HTML kodu

<q> : metne çifttırnak ekler

<rp> : Browser ruby kodlarını desteklemediğinde görüntülenecek metni tanımlar

<rt> : Özel karakter gösterilmesini sağlar

<ruby> : ruby yazılarını gösterir

<s> : Metni üstü çizili yapar

<samp> : metin düzenler

<script> : Kullnıcı tarafında çalışan script kodlarını eklemek için kullanılır

<section> : Dokumanda bir bölge tanımlar

<select> : Açılır menu tanımlar

<small> : Metni küçültür

<source> : Media elemanları için kaynak tanımlar

<span> : HTML dökümanı içinde satır cinsinden bir alan tanımlar

<strong> : Metni kalın yapar

<style> : CSS tanımlar

<sub> : Satır altı metin oluşturur

<summary> : HTML dokumanında özet alanı öluşturur

<sup> : Satırüstü metin oluşturur

<table> : Tablo tanımlar

<tbody> : Tablo elemanlarını gruplar

<td> : Tabloda bir hücre tanımlar

<textarea> : HTML form içinde çok satırlı metin giriş elemanı tanımlar

<tfoot> :  Tablonun footer elemanların gruplar

<th> : Başlık biçiminde tablo hücre elemanları oluşturur

<thead> : Tablo başlık elemanlarını gruplar

<time> HTML dokumanında zaman bilgisi göstermek için kullanılır

<title> : HTML dokumanının başlık çubuğuna yazı yazmak için kullanılır

<tr> : tabloya satır elemanı eklemek için kullanılan HTML kodu

<u> : metnin altını çizmek için kullanılan HTML tagı

<var> : Eğik yazı oluşturur

<video> : HTML sayfasına video  eklemek için kullanılan HTML5 tagı

<wbr> : Satır sonu tanımlar

7 Mayıs 2013 Salı

JavaScript Saat Kodları

 JavaScript ile dijital saat yapımı.


http://www.w3schools.com da bulduğum basit ama öğretici bir Javascript uygulaması. Basit olduğuna bakmayın o sitede Advanced Examples kategorisinde bulunuyor. Yani aslında bu çalışma ileri düzeyde bir JavaScript uygulaması. siteden aldığım kodları blogger'da çalışacak şekilde düzenledim ve konunun daha iyi anlaşılabilmesi için kodları Türkçeleştirmeye çalışıtm. Kodların orijinallinde saati çalıştıran fonksion body tag'ı içine onload="saatim()" yazılarak çalıştırılıyordu ben onu scriptin içine aldım. Eğer fonksiyonu onload parametresiyle çalıştıracaksanız script içindeki saatim();  yazan satırı silin ve turuncu renklli parametreyi body tagına yerleştirin. Bu durumda scripti de head taglarinin arasına yerleştirmelisiniz. Yerleştirmeyi bu şekilde yaptığınızda web sayfanız yüklendiği zaman saatim() fonksiyonu otomatik olarak çalışacak ve web tarayıcınız fonksiyon kodlarına bağlı olarak sayfa içinde id değeri saat olan HTML elamanlarını arayacak ve bulduklarının içine o anki zamanı saat, dakika ve saniye olarak yazacaktır.

Aşağıdaki kodlamada ise durum biraz farklı. Öncelikle saati yazdırmak istediğim id'si saat olan bir HTML elemanı oluşturdum. Sonra da altına Javascirpt kodlarını yerleştirdim. Burada sıralama önemli. Bir javascript kodunu sayfa içinde kullanacaksanız mutlaka etki edeceği elemanların altına yazmalısınız. Unutmayın web tarayıcınız da aynı sizin gibi kodları yukardan aşağı okur. Eğer HTML elemanını kodun altına yazarsanız browser fonksiyonu başlatan kodu bulamaz ve programınız çalışmaz(eleman içine onload parametresi yazabilirsiniz ama herzaman sağlıklı çalışmaz, önermiyorum). JavaScript programları, elemana tıklama veya yükleme sayfa olaylarının tetiklemesiyle çalışır. Kodlama yaparken bunu göz önüne almalısınız. Aşağıdaki kodlamada hangi elemanın ne iş yaptığını kısaca anlatmaya çalıştım umarım yararlı olur.

<div id="saat"></div> // saati göstereceğim HTML elemanı
<script type="text/javascript">
saatim(); // saatim fonksiyonu çağırılıyor
function saatim() // fonksiyon başlangıcı
{
var zaman=new Date(); // zaman isimli bir Date nesnesi oluşturuluyor.
var sa=zaman.getHours();// zaman nesnesinden getHours metoduyla saat bilgisi bir değişkene aktarılıyor
var da=zaman.getMinutes(); // aynı işlem getMinutes ile dakika için yapılıyor
var sn=zaman.getSeconds(); // yine saniye bilgisi için getSeconds medodu kullanılıyor

// buraya kadar kullanılan getHours, getMinutes ve getSeconds metodları JavaScript'tin standart metdolarıdır.

da=zamanAyarla(da);
sn=zamanAyarla(sn);

// Yukarıdaki iki satırda çift haneli gösterim yapmak için dakika ve saniye değerleri zamanAyarla fonksiyonuna gönderiliyor. fonksiyon kendisine gelen sayı 10 dan küçükse bu değerin önüne bir sıfır ekleyip  geri döndürüyor
document.getElementById('saat').innerHTML=sa+":"+da+":"+sn; // id değeri saat olan HTML nesnesini içine sa, da ve sn değişkenlerinin değerlerini yazıyor
setTimeout("saatim()",1000); //Her 1000ms(1saniye) de bir saatim() fonskiyonunu çalıştıran standart JavaScript fonkisyonu burası saatin gerçek bir saat gibi her saniye değer değiştirmesini sağlıyor.
}

function zamanAyarla(i) // i parametresiyle bir değer alarak fonksiyon başlar
{
if (i<10) // koşul inceleniyor i 10 dan küçükse hemen alt satırdaki işlemler yapılacak. i 10 dan büyükse doğrudan return satırına gidilecek
  {
  i="0" + i; // i değerinin önüne 0 ekleniyor(String değer, JavaScript'te değişkenler için tip koruması yoktur)
  }
return i; // bu fonksiyon işlemleri sonucunda elde edilen değer fonksiyonun çağırıldığı yere geri döndürülüyor.
}
</script>

Şayet kodlamaları doğru yaptıysak saatimiz aşağıdaki gibi çalışacaktır. Ben sadece CSS ile biraz görünümünü değiştirdim. Siz de kendi CSS tasarımınızı uygulayabilirsiniz.

Yorumlarınızı Bekliyorum

28 Nisan 2013 Pazar

Java Notları-4- Wrapper Nedir?

İlkel(primitive) veri tipleri olan int, float, short, long ve double, Java programlarının daha performanslı çalışabilmeleri için nesne olarak tanımlanmamışlardır. Buna karşın primitive tiplerin herbiri için oluşturulmuş birer Java sınıfı da mevcuttur. Java'da bu sınıflara Wrapper Class denir. Wrapper sınıflarına bir örnek:


public class ornek {
    public static void main(String[] args){
        String yazi="125";
        int sayi;
        Integer i = new Integer(5); /*wrapper class tanımı, i değişkeni Integer tipinde tanımlanıyor ve 5 değeri atanıyor*/
        sayi=Integer.parseInt(yazi); // String tipindeki bir değişkenin Integer tipine parse edilmesi
       
        System.out.println(sayi);
        System.out.println(yazi);
        System.out.println(i);
    }

}

Programın çıktısı ise şu şekildedir:

Java Wrapper Class

27 Nisan 2013 Cumartesi

Java Notları-3-Ondalıklı Sayı Değişkenleri

double ve float tipinde tanımlanmış değişkenler diğer programlama dillerinde olduğu gibi Java dilinde de ondalıklı sayıları bellekte tutmak için kullanılır.

float değişken tipi virgülden sonra 7 haneye kadar duyarlıdır. 32 bitlik veri tutar.

double değişken tipi virgülden sonra 17 haneye kadar duyarlıdır. 64 bitlik veri tutar.

25 Nisan 2013 Perşembe

Java Notları-2-Tam Sayı Değişkenleri

Java'da tam sayı değişkenleri int, byte, long ve short tiplerinde tanımlanabilirler. Bu değişkenlerin özellikleri aşağıdaki tabloda verilmiştir.

Değişken TürüTürkçesiBellekte Kapladığı AlanSınır Değerleri
intTam Sayı Değişkeni32bit-2157483648 ile 2147483647 arası
byteTam Sayı Değişkeni8bit-128 ile 127 arası
shortTam Sayı Değişkeni16bit-32768 ile 32767 arası
longTam Sayı Değişkeni64bit-9223372036854775808 ile
9223372036854775808 arası

Java Notları-1-Merhaba Dünya Programı

Konsol ekranına Merhaba Dünya yazdıran Java programı

selam.java kodları:

public class selam {
    public static void main(String[] args){
        System.out.println("Merhaba Dünya");
       
    }

}

Programın Eclipse ortamında Console çıktısı aşağıdaki gibidir.

Merhaba Dünya Java Programı

26 Mart 2013 Salı

Java GUI Örnek 1 (Java JFrame)

Java ile görsel programlama örnek 1


Java ile GUI(Graphical User Interface-Grafiksel Kullanıcı Arayüzü) çalışmalarımıza boş bir çerçeve oluşturarak başlıyoruz. Aşağıdaki kısa java programı ekranın sol üst köşesine başlığı "İlk Çerçevem" olan boş bir çerçeve çizdirir.

Bu ilk örek GUI uygulamamızı kısaca incelersek;

import javax.swing.JFrame; //JFrame sınıfı uygulamaya import ediliyor


public class main {

    public static void main(String[] args) {
        JFrame cerceve = new JFrame();// cerceve isimli JFrame nesnesi oluşturuluyor.
        cerceve.setTitle("İlk Çerçevem");// çerçevenin başlığı belirleniyor.
        cerceve.setSize(350, 300);// çerçevenin boyutları belirleniyor.
        cerceve.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// çarpıya basıldığında çerçeve ile birlikte programı da kapatan kod
        cerceve.setVisible(true);//çerçeveyi görünür kılan kod
       

    }

}

Örnek JFrame UygulamasıBu basit GUI örneğinin ekran görüntüsü sağ tarafta görüldüğü gibi boş bir pencere olmalıdır.










-Turgut ARSLAN-

28 Ocak 2013 Pazartesi

Java Docs Türkçe Package java.applet


Package java.applet

Bir applet ve appletin context'ini kullanan classları oluşturmak gerekli class'ları sağlar.

Applet framework'u iki temel unsurdan oluşur: applet ve applet context'i. Applet birkaç tane özel method ile başlatılabilen, çalıştırılabilen ve durdurulabilen bir gömülebilir penceredir.

Applet contexti appletlerin yüklenmesinden çalışmasından sorumlu bir uygulamadır. Mesela applet context'i bir web tarayıcısı ya da bir uygulama geliştirme ortamı olabilir.

Interface AppletContext

public interface AppletContext

Bu ​​Interface(arayüz) applet'in içinde bulunduğu ortama bağlıdır.

Bu arayüz yöntemler ortamı hakkında bilgi elde etmek için bir applet tarafından kullanılabilir.

Interface AppletContext Methodları:


getAudioClip


AudioClip getAudioClip(URL url)

Bir ses klibi oluştutur.

Parameters:
url - ses klibinin konumunu veren mutlak URL.
Returns:
Belirtilen URL adresindeki ses klibini verir.

getImage


Image getImage(URL url)

Ekranda görüntülenebilen bir Image nesnesini getirir. url argümanı kesin bir URL adresi ile belirtilmelidir.

Bu method resim olsa da olmasada daima bir sonuç döndürür.Applet ekrana bir resim çizmeye başladığında veriler yüklenecektir.Grafik parçaları ekrana aşamalı olarak çizilecektir.

Parameters:
url - Resmin kesin adresini veren URL.
Returns:
URL ile belirtilen resim.

getApplet


Applet getApplet(String name)

Belge içinde applet context'inde verilen isimle temsil edilen appleti bulur ve getitrir. İsim HTML tagının içinde name özelliğiyle ayarlanabilir.

Parameters:
name - bir applet ismi.
Returns:
isimle aranan appleti verir. Bulamazsa null değer döndürür.

getApplets


Enumeration<Applet> getApplets()

Bu applet contexti ile temsil edilen tüm appletleri bulur.

Returns:
İlgili applet contextinde belirtilen tüm appletleri numaralandırır.

showDocument


void showDocument(URL url)

url argümanı ile belirtilen tarayıcı ya da aplet viewerin isted ği Web sayfasını gösterir. Web sayfasında hangi frame ya da pencerenin görüntüleneceğini web tarayıcı ya da applet viewer belirler. Bu method applet context tarafından yoksayılailir ancak bu durum tarayıcılar için aynı değildir.

Parameters:
url - Belgenin konumunu veren mutlak URL.


showStatus


void showStatus(String status)

Bir string argumanı ile görüntülenen durum penceresini ister. Çoğu browser ve applet viewer böyle bir pencereyi sağlar, where the application can inform users of its current state.

Parameters:
status - a string to display in the status window.

setStream


void setStream(String key,
InputStream stream)
throws IOException

Aplet context'i içinde yazılan key ile stream'i birleştirir.  Eğer applet context'i önceden bu key için bir eşleşme içeriyorsa bu değer yenisi ile yer değiştirir.

Güvenlik sebebiyle stream'ların ve key'lerin herbirinin eşleşmesi  kod tabanında(codebase) gerçekleşir.Diğer bir deyişle  kod tabanındaki bir applet başka bir kod tabanındaki bir applet tarafından oluşturulan  oluşturulan stream'e erişemez.

Parametreler:
key - belirtilen değerle ilişkili olan anahtar kelimedir..
stream - belirli bir key ile birleştirilen akım(veri akışı). Eğer bu parametre null değerdeyse(boşsa), belirtilen key applet context'inden çıkarılır .

Throws:
IOException - Eğer stream(veri akışı) belirli bir boyut limitini aşarsa. Boyut limiti bu interface ya da implementor tarafından belirlenir.
IOException

Bu metod Java 1.4 ten itaibaren kullanıma sunulmuştur.

getStream


InputStream getStream(String key)


Applet context'inde belirtilen keyle ilişkili stream'i döndürür. Eğer applet context'i bu key için bir stream içermiyorsa metod null değeri döndürür.

Güvenlik sebebiyle stream'ların ve key'lerin herbirinin eşleşmesi  kod tabanında(codebase) gerçekleşir.Diğer bir deyişle  kod tabanındaki bir applet başka bir kod tabanındaki bir applet tarafından oluşturulan  oluşturulan stream'e erişemez.

Parametreler:
key - döndürülecek olan stream ile ilişkilidir.
Döndürdüğü Değer:
Applet context'ineki key ile uyumlu stream

Bu metod Java 1.4 ten itaibaren kullanıma sunulmuştur.

getStreamKeys


Iterator getStreamKeys()

Applet context'indeki streamlere ait tüm keyleri bulur.


Güvenlik sebebiyle stream'ların ve key'lerin herbirinin eşleşmesi  kod tabanında(codebase) gerçekleşir.Diğer bir deyişle  kod tabanındaki bir applet başka bir kod tabanındaki bir applet tarafından oluşturulan  oluşturulan stream'e erişemez.


Döndürdüğü Değer:
Applet context'indeki tüm stream isimleri için bir Iterator(yineleyici) döndürür..

4 Ocak 2013 Cuma

Android SDK Tools Güncelleme Sorunu [ÇÖZÜM]

Android SDK Tools Güncellenmiyor

Warning! the following processes: -cmd.exe -java.exe are locking the following directory ................  Please close theese aplications so that the istallation can contnue. When ready, press Yes to try again

 ECLIPSE ortamında Android SDK Toollarını güncellediğinizde, SDK Manager tools klasörünü güncellerken aşağıda sıralı hata mesajlarını alırsınız.

"Warning! the following processes: -cmd.exe -java.exe are locking the following directory ................
Please close theese aplications so that the istallation can contnue. When ready, press Yes to try again."

"Installing Android SDK Tools revision 21.01
Failed to rename directory...."
Hata mesajında özetle;  tools klasörünüzün cmd.exe ve java.exe dosyaları tarafından kullanıldığı için yenisiyle değiştirilemediği, bu işlemlerin yapılabilmesi için bu iki programın kapatılması gerektiğinden bahsedilmektedir.

Burada problem  Görev yöneticisini açıp bu iki dosyayı "İşlemi Sonlandır" diyerek kapattığımızda ortaya çıkar. Çünkü bu programlar aslında SDK Manager'ı çalıştırmaktadır.Sonuç olarak onları kaptattığınızda SDK Manager de kaapanaağı için tools klasörü güncelleme girişiminiz başarısızlıkla sonuçlanır.

Şimdi hemen aklınıza Android SDK dosyalarını silip en son sürümlerini indirerek herşeye baştan başlamak gelebilir. Doğrudur. O şekilde de sonuca ulaşabilirsiniz. Ancak bunu yapmanın daha kolay bir yolu var.

SDK Manager güncelleme yaparken gerekli dosyaları sıkıştırılmış olarak temp klasörüne indirir ve sonra bilgisayarda yüklü olan dosyaları yeni indirdikleri ile değiştirir. En son olarak da temp klasörünün içini boşaltır. Bu şekilde güncelleme yapılmış olur. Biz Android SDK Tools'u güncellemek istediğimizde de bu işlemi SDK Manager'in yüklü olduğu klasör altında bulunan "tools" klasörü için yapmak ister.   Ancak bu klasör SDK tarafından kullanıldığından işlem başarısız olur. İşlem başarısız olduğu için "temp" klasörüne indirilmiş olan zipli dosya silnmez. İşte  size sorunun 3 Adımda çözümü,

Android SDK Manager Tools Klasörünün Güncellenmesi

1. Adım : İlk önce ECLIPSE ve Android SDK Manager'ı kapatın.
2. Adım : Android SDK Manager'ın yüklü olduğu klasörü açın ve "tools" klasörünü silin. merak etmeyin o klsörü bir daha özlemeyeceksiniz.
3.Adım :"temp"klasörü içindeki zipli dosyayı açın ve içinden çıkan "tools" klasörünü eskisinin yerine kopyalayın.

Hepsi bu kadar. Artık rahatlıkla ECLIPSE ve Android SDK Manager'i kullanabilirsiniz. Böylelikle eskisini silmeden sisteminiz güncellenmiş olur. daha önce yapığınız çalışmaları da kaybetme riskiniz ortadan kalkar.

Not: 2. Adımda "tools" klasörünü silin dedim ya. Siz bana bakmayın bilgisayar dünyasında her zaman işinizi sağlama alın. o klasörü bir yere kopyalayın. Güncelleme işlemi başarı ile gerçekleştiği zaman silersiniz. 

Kolay gelsin hepinize. İyi Çalışmalar... Saygılar vs vs


Turgut Arslan