Neden Python ?

Python öğrenmeye yeni başlıyorum. Bu deneyimi benim gibi yeni öğrenecek arkadaşlarımla paylaşmak istedim. Neden Python öğrenmek istiyorum? Çünkü Python’u endüstri 4.0 ve dolayısıyla IOT dünyasına giriş kapısı olarak görüyorum. Bir çok geliştirme kartı bu dil ile programlanabiliyor. Gelişmiş kütüphaneleri bulunuyor. Gelecek açısından bakınca alternatif bir dil bilmenin gelişen yazılım dünyasında avantaj oluşturabileceğini tahmin ediyorum.

Python ile geliştirme kartlarında giriş ve çıkışlara erişim sağlanabileceği gibi API veya veritabanlarına erişim sağlayabiliyoruz. Hem donanım seviyesinde bir sensörden veri okuyabilir hem de kullanıcı seviyesinde bu bilgileri neredeyse! tek programlama dili ile çözebilirim.

Bir kullanıcı arayüzünü Python’un GUI kütüphaneleri ile geliştirebilirim. Geliştirme kartıma ekran bağladığımda istediğim gibi ekranda gösterebilir, ekran dokunmatik ise butonlara basıp bu seferde geliştirme kartımdaki çıkışlara sinyal gönderebilirim.

Pyhton aynı zamanda bir API’a bağlanabilir ve programımda API arayüzü olursa bu işi cep telefonumdan dahi yönetebilirim. Cep telefonundan LED’leri yakıp söndürmek gibi işlemler en basit düzeyde örnek olabilir.

Konumuz buraya kadar gelmişken python ile hangi geliştirme kartlarını kullanabiliriz bir bakalım.

MicroPython pyboard

Bu kart bize MicroPython ile geliştirme yapma imkanı sağlıyor. MicroPython arkasına Python dilinin gücünü almış doğrudan mikro denetleyiciler ile çalışabilen bir dil. Üzerinde dahili wifi veya bluetooth özelliği bulunmuyor. Bu kabiliyeti kazandırmak için ESP8266 gibi wifi özelliği olan bir kart daha kullanmak gerekiyor. ESP8266’yı kolayca entegre edebiliyormuşuz. Örnekleri ile başka bir yazıda bu kısmı açıklayabilirim.

Tüm özellikleri şöyle

  • STM32F405RG microcontroller
  • 168MHz Cortex M4 CPU with hardware floating point
  • 1024KiB flash ROM and 192KiB RAM
  • MicrgiboUSB connector for power and serial communication
  • MicroSD card slot, supporting standard and high-capacity SD cards
  • 3-axis accelerometer (MMA7660)
  • Real-Time Clock (RTC) with optional battery backup
  • 24 GPIO on left and right edges and 5 GPIO on bottom row, plus LED and switch GPIO available on bottom row
  • 3x 12-bit analog to digital converters, available on 16 pins, 4 with analog ground shielding
  • 2x 12-bit digital to analog (DAC) converters, available on pins X5 and X6
  • 4 LEDs (red, green, yellow and blue)
  • 1 reset and 1 user switch
  • Onboard 3.3V LDO voltage regulator, capable of supplying up to 250mA, input voltage range 3.6V to 16V
  • DFU bootloader in ROM for easy upgrading of firmware

Raspberry Pi

Kredi kartı boyunda gerçek bir bilgisayardır. Monitor, klavye ve mouse bağlayabilirsiniz. İşletim sistemi kurulu bir sd kart ile çalışıyor. Yayınlanan işletim sistemlerinden Raspbian bunlardan bir tanesidir. Tüm özellikleri için resmi distribütöründen alıntı yapıyorum.

  • Daha çok GPIO: Eski sürüm Raspberry Pi Model B’de 26 GPIO pini varken Raspberry Pi 3’de 40 pin bulunmaktadır.
  • Daha çok USB Portu: Mevcut Raspberry Pi’nin eski sürümlerinde 2 adet USB2.0 portu varken bu modelde Raspberry Pi 3’de 4 adet USB2.0 portu vardır. Bu portlarda yapılan geliştirmelerle sayesinde aşırı akım kontrolü ve de tak-kullan desteği sunmaktadır.
  • Micro SD Kart: Normak SD Kart kullanılan eski modellerin yerine Raspberry Pi 3’de mikro SD Kart kullanılmaktadır. Mikro SD’ye geçilmiş olması cihazın hem daha kibar, hem de çarpmalara karşı kartın daha güvenli olmasını sağlamaktadır.
  • Daha iyi ses çıkışları: Analog ses çıkışları dip gürültüsünden etkilenmekte ve kalitesiz sese neden olabilmekteydi. Yapılan değişiklikler ile bu sorun giderildi.
  • Düşük güç tüketimi: Standart kullanımda 5V 500mA civarında akım çeken Raspberry Pi 3 maksimum 5V 2,5A (12,5W) akım tüketmektedir.

Orange Pi

Diğer pojelerde kullandığımız ve incelediğimiz geliştirme kartıdır. Raspberry Pi ile çok benzer özellikleri vardır diyerek kısa kesiyorum. Çünkü bu kartı kullanarak size hemen hemen her şeyi diğer yazılarımızda açıkladık. Bununla ilgili yeni yazılarımızı yazmaya devam ediyoruz.

Daha bir çok geliştirme kartı bulunuyor. Özellikle bir işletim sistemi ile çalışanlarda Python baş rolde görünüyor. Benim ilgimi PyBoard çekti. İşletim sistemi olmadan doğrudan Python scriptlerini çalıştırabiliyor.

Python‘u neden öğrenmek istediğimden, amacıma yönelik hangi geliştirme kartlarını kullanabileceğimden ve kısaca ne imkanlara sahip olduğundan bahsetmiş olduk.

Peki, dili öğrenmeye nereden ve nasıl başlayacağız? Tabi ki değişkenler. Sonraki yazıyı Python’da değişken tanımlarını şimdiye kadar ki yazılım geliştirme tecrübemle, anladığım kadarıyla, basitçe anlatarak yardımcı olmaya çalışacağım.

Python’u, siz isterseniz internet sayfaları geliştirmek için, isterseniz makine öğrenmesi için öğrenebilirsiniz. Arasındaki farklar kullanacağınız kütüphaneler ve kurulacak mantıklar olacaktır.

Artık kararınızı vermiş ve ben Python öğrenmeliyim diyorsanız öncelikle kurulumundan başlayarak ilk adımı atabilirsiniz. Merak etmeyin hem öğrenmesi hem programlaması çok keyifli bir dil olduğu için düzenli çalıştığınızda hızlıca öğrenebileceğiniz bir dil olduğunu söyleyebilirim. Python’u nasıl indirip kurabileceğinizi anlatan yazıyı buradan okuyabilirsiniz. 

Aklınıza takılan soruları yorum olarak bırakabilirsiniz en kısa sürede cevaplarım..