Python Ödevleri, Dersleri, Kod örnekleri hakkında

Eğer bu yazıyı ilk defa okuyorsanız, şu da ilginiz çekebilir [Tıkla]

Merhaba dostlar,

Bu yazıyı okuyorsanız muhtemelen Google’da Python Kod Örnekleri yazarak beni buldunuz.

İletişim sayfasından beni arıyorsunuz, mesaj atıyorsunuz, WhatsApp uygulamasından yazıyorsunuz, farkındayım.

Kimisi sınav esnasında arıyor veya mesaj atıyor,
Kimisi ödev teslim tarihi yaklaşınca arıyor veya mesaj atıyor,
Kimisi ise gerçekten Python programlama dilini merak etmiş, bu yüzden arıyor veya mesaj atıyor.

Takdir edeceğiniz üzere, benim de bir iş hayatım ve özel hayatım var.
Yazdığınız zaman, sorunlarınıza veya isteklerinize hemen cevap veremiyorum, bunu her zaman anlayışla karşıladığınız için teşekkür ederim.

Bu konuya istinaden iki(2) yeni haberim var.

  1. Bundan sonra sitede python kod örnekleri ile python programlama dersleri yayınlayacağım. Duruma göre belki Django ile web site nasıl yapılır, ilerleyen derslerde bunu da ele alacağım. Artık dersler başladı. Şu linkten takip edebilirsiniz.
  2. Ödevlerinizde veya projelerinizde iki farklı şekilde yardımcı olacağım (Ödevlerinizde teslim süresinden en az 2-3 gün önce veya kurumsal projelerinizde büyüklüğüne göre tahmini bitme süresinden önce haberleşme şartı ile):  
    1. Ücretli
    2. Ücretsiz

 

Neye göre ücretli, neye göre ücretsiz diye soruyor olabilirsiniz kendi kendinize.

  • Eğer ödeviniz veya projeniz tüm kodları teslim etmeye yönelik ise, elbette ücretli olacaktır.
    • Ödev, kurumsal projelere göre daha hızlı yapılabileceğinden ve öğrenci olduğunuzdan dolayı kedi tarifesinde olacaktır. Kedi tarifesi derken, sizden  elde edeceğim ücret, Kadıköy’deki ofisin bahçesinde gönül vermiş olduğumuz 19 kedinin günlük yemek ihtiyacını karşılayacaktır. Ödev büyüklüğüne göre iki(2), üç(3) günlük yemek tarifesi talep edebilirim. Kedi tarifesi en az 50 TL’dir, tarife değişiklik gösterebilir. Tamamlanması yirmi-dört (24) saatten az olan bütün ödevler bir(1) günlük sayılır. Bunun sebebi, sizin yapmanız gereken ödevi sizin yapmamanız ve mevcut vaktimi size ayırmam sebebim iledir. Ayrıca şunu da belirtmek isterim, madem öğrenci arkadaşlar görüyor, bilinçlensin isterim. Programlama derslerinin eğitimi ve sınavı, kağıt üstünde olmamalıdır. Gerekirse dilekçe yazın, uygulamalı ders olarak isteyin dersi ve sınavı. Çünkü bu yöntem ile sağlık bir eğitim almanız neredeyse imkansızdır. (Yakında bununla ilgili bir makale paylaşacağım).
    • Kurumsal Projeler, içeriği farklı, planlı ve daha çok vakit aldığından dolayı ücret tarifesi daha farklı olacaktır. Onu da karşılıklı istişare ile belirleyeceğiz.
  • Eğer ödeviniz veya projeniz bilgi almaya yönelik ise, elbette ücretsiz olacaktır.
    1. Ödev veya kurumsal proje içeriğinden bahsediniz, varsa örnekleri de gönderiniz.
    2. Hangi metotları kullanmalısınız, nasıl bir algoritma izlemelisiniz, varsa alternatifleri veya önceden yapılmışları vb. konuları tarafınıza söylerim. Kısacası şirket içerisinde kahve almaya giderken, kahve makinesi önünde karşılaşmış, “Geçen söyle bir sorun oldu.. şöyle yaptım, çözüldü..” kafasında iki yazılımcı gibi karşılıklı konuşuruz. Ödev veya projenizde bu konuşulanları uygular veya uygulamazsınız. (Amerika’dayken çok derlerdi, It’s up to you).

 

Şimdiden anlayışınız için teşekkür ederim.

bagis genel 150x150 - Python Ödevleri, Dersleri, Kod örnekleri hakkında

Enis Kurtay YILMAZ

What is JSON And How To Using It In C#

Merhabalar.

Geçen hafta C# Corner adresinde yayınlanmış olan İngilizce makalemin orijinal kopyasını kendi web adresimde de paylaşmaya karar verdim. 11.04.2016 10:47 itibari ile 2.9k okunmasıyla beraber, aldığım geri bildirimler ve gelen mesajlar ile “Bir sonraki makale ne olsun?” sorusuna da cevap arıyorum. Herkese iyi kodlamalar.

Working with JSON in C#
(What is JSON And How to Using It In C#)

This article will cover the following:

  • What is JSON
  • How to create JSON string in C#
  • How to read JSON string in C#

 

What is JSON

JSON (JavaScript Object Notation) is standard designed for human-readable data interchange. I think the thing of ‘human-readable’ for developers. JSON works with a tree structure and it looks like a XML. It’s shorter and It’s very easy for using. If you have already experience with XML, you will certainly learn easily.

JSON vs. XML

\wp content\uploads\2016\csharpcorner\picture1 - What is JSON And How To Using It In C#

Let’s examine this expression { “name”: “Stephen Cousins” }

  1. If you’re using JSON, you must put your expression in “{ }”
  2. “name” is the key.
  3. “Stephen Cousins” is a value of “name” key

 

JSON has the logic like { “key”: “value” } statement.
And also JSON has the array.

Let’s take another expression and examine that:

"students": [
{ "name": "Stephen Cousins" },
{ "name": "Austin A. Newton" },
{ "name": "Adam Wilhite" },
{ "name": "Enis Kurtay YILMAZ" }
]
  1. “students” is the key.
  2. “[“ and “]” square brackets are array statement. It means there is the array between “[“ and “]” in brackets.
  3. All of statements in square brackets are value of “students” key.
  4. As you see there are four arrays in square brackets and it represents four student names.

 

How to create JSON string in C#

Please create your new console project from Visual Studio

File -> New-> Project->Console Application (.NET Framework 3.5)

If you want to create or read a JSON string, you need a JSON Serialize or Deserialize.

So, please open your Solution Explorer in Visual Studio, right click on References, click “Manage NuGet Packages”

\wp content\uploads\2016\csharpcorner\picture2 - What is JSON And How To Using It In C#

Please search “Newtonsoft.JSON” on Nuget Package Manager and install it.

\wp content\uploads\2016\csharpcorner\picture3 - What is JSON And How To Using It In C#

Please add “using Newtonsoft.Json;” statement. If you forget to add this statement, you can’t serialize any JSON strings.

Example JSON:

{
 "universities": {
 "university": "South Carolina State University",
 "students": [
 { "name": "Stephen Cousins" },
 { "name": "Austin A. Newton" },
 { "name": "Adam Wilhite" },
 { "name": "Enis Kurtay YILMAZ"}
 ]
 }
}

Now, you need to create class for example JSON. If you want to create easily, you can use that web site -> www.jsonutils.com

\wp content\uploads\2016\csharpcorner\picture4 - What is JSON And How To Using It In C#

Creating JSON string in C#:

using System;
using System.Collections.Generic;
using Newtonsoft.Json;

namespace EKY.CSharpCornerJSONArticle
{
 public class Student
 {
 public string name { get; set; }
 }
 public class Universities
 {
 public string university { get; set; }
 public IList<Student> students { get; set; }
 }
 public class ClassUniversities
 {
 public Universities universities { get; set; }
 }
 class Program
 {
 static void Main(string[] args)
 {
 ClassUniversities university1 = new ClassUniversities();

 university1.universities = new Universities();
 university1.universities.university = "South Carolina State University";

 List<Student> listStudent = new List<Student>();
 Student student1 = new Student { name = "Stephen Cousins"};
 Student student2 = new Student { name = "Austin A. Newton" };
 Student student3 = new Student { name = "Adam Wilhite" };
 Student student4 = new Student { name = "Enis Kurtay YILMAZ" };

 listStudent.Add(student1);
 listStudent.Add(student2);
 listStudent.Add(student3);
 listStudent.Add(student4);

 university1.universities.students = listStudent;
 string json = JsonConvert.SerializeObject(university1);

 Console.WriteLine(json);
 Console.ReadLine();
 }
 }
}

Result.

\wp content\uploads\2016\csharpcorner\picture6 - What is JSON And How To Using It In C#

 

How to read JSON string in C#

I think this part will be very easy for you. Just you need an example JSON string and JSON class of your example. You can use www.jsonutils.com again, if you want to create a class for your example JSON.

I will JSON strings from my website -> https://www.eniskurtayyilmaz.com/api/get_posts/

using System;
using System.Collections.Generic;
using Newtonsoft.Json;
using System.Net;
using System.IO;

namespace EKY.CSharpCornerJSONArticle
{
 public class Category
 {
 public int id { get; set; }
 public string slug { get; set; }
 public string title { get; set; }
 public string description { get; set; }
 public int parent { get; set; }
 public int post_count { get; set; }
 }
 public class Tag
 {
 public int id { get; set; }
 public string slug { get; set; }
 public string title { get; set; }
 public string description { get; set; }
 public int post_count { get; set; }
 }
 public class Author
 {
 public int id { get; set; }
 public string slug { get; set; }
 public string name { get; set; }
 public string first_name { get; set; }
 public string last_name { get; set; }
 public string nickname { get; set; }
 public string url { get; set; }
 public string description { get; set; }
 }
 public class CustomFields
 {
 }
 public class Post
 {
 public int id { get; set; }
 public string type { get; set; }
 public string slug { get; set; }
 public string url { get; set; }
 public string status { get; set; }
 public string title { get; set; }
 public string title_plain { get; set; }
 public string content { get; set; }
 public string excerpt { get; set; }
 public string date { get; set; }
 public string modified { get; set; }
 public IList<Category> categories { get; set; }
 public IList<Tag> tags { get; set; }
 public Author author { get; set; }
 public IList<object> comments { get; set; }
 public IList<object> attachments { get; set; }
 public int comment_count { get; set; }
 public string comment_status { get; set; }
 public CustomFields custom_fields { get; set; }
 }
 public class Query
 {
 public bool ignore_sticky_posts { get; set; }
 }
 public class ClassWebsiteposts
 {
 public string status { get; set; }
 public int count { get; set; }
 public int count_total { get; set; }
 public int pages { get; set; }
 public IList<Post> posts { get; set; }
 public Query query { get; set; }
 } 
 class Program
 {
 static void Main(string[] args)
 {
 string url = "https://www.eniskurtayyilmaz.com/api/get_posts/";

 HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
 string jsonValue = "";
 using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
 {
 StreamReader reader = new StreamReader(response.GetResponseStream());
 jsonValue = reader.ReadToEnd();
 }

 ClassWebsiteposts websitePosts = JsonConvert.DeserializeObject<ClassWebsiteposts>(jsonValue); 
 }
 }
}

Result.

\wp content\uploads\2016\csharpcorner\picture5 - What is JSON And How To Using It In C#

All of source code for downloading  http://download.eniskurtayyilmaz.com/csharpcornerarticle.rar

bagis genel 150x150 - What is JSON And How To Using It In C#
Enis Kurtay YILMAZ

Bir yazılım geliştiricinin donanımı

2013 yıllarının ortalarında şimdiki kullanmış olduğum dizüstü bilgisayarı aldım (Asus K55VM).

O zamanlar özelliği Intel i5 2.60 Ghz, 8 GB RAM DDR3, 2 GB ekran kartı ve 750 GB HDD idi..

Bu süreçte yazdığım uygulamalar ilk zamanlarda çok hızlı çalışıyordu ve zamanla derleme esnasında, uygulama çalıştırma durumlarında veya SQL Management Studio üzerinden yaptığım sorgunun geri gelme süreleri zamanla gecikmeye veya uzamaya başladı.

Herkes gibi düzenli olarak yeniden işletim sistemi dönemlerim başladı.
Beş (5) ay geçiyor, bir yavaşlama var..

Evet! Format zamanın geldi senin!

* * *

Elimde bir proje var ve gerçekten çok sıkıcı. Zamanında bir yazılımcı ilgili müşterime uygulamayı yazmış, kaynak kodlarını da teslim etmiş ve projeyi iki etaptan oluşturulmuş. Masaüstü ve web uygulaması. Web ve masaüstü uygulamasında birkaç değişiklik ve beş(5) adet raporlama istiyor, üstelik fiyat uçuk seviyede..

(Bu arada en nefret ettiğim iş türlerinden biridir başkasının yazdığı bir uygulamayı tekrar düzenlemek. Yazılımcının “yazdığı kafayı” anlamak, gerektiğinde onu tebrik etmek ve gerektiğinde de küfür etmek bunun içerisindedir bu süreçte)

Proje başarılı.
Bunu yazan kişi evet programlamayı yalayıp yutmuş, modellemeyi de üstelik çok iyi biliyor. Yazdığı sınıflardaki mantık bir o kadar güzel..

Fakat(!),
İçine etmiş her şeyin. Çok saçma sapan yerlerde, çok alakasız bir ilişki kurmuş.. Veritabanı öyle bir tasarlanmış ki “Neden müşterim benden önce bir yazılımcı bulamamış ve bütçe bu kadar uçuk?” sorusunun cevabını veriyor.

Uygulama resmen sadece bitirilmek için yazılmış. Yaparken modelleme başarılı ama alakasız şekilde olanlar o kadar çok fazla ki.. Yazılım resmen Tanrıya emanet çalışmış bunca zaman..

Hayatımda bu kadar berbat ve alakasız veritabanı tasarımı görmedim. [1]

Derle, 30 saniye bekle..
Uygulamanın veritabanına bağlanmasını bekle, sorgu çeksin, 10 saniye..
Web tarafını kodluyorsan, açılması için en az 20 saniye bekle..

Bir yanda ikinci bir kişinin yazdığı yazılımsal sorunlardan kaynaklanan yavaşlama, diğer yanda da benim cihazımın zamanla yıpranan donanımsal durumu..

* * *

(Önceki yazılım şirketinde sunucumuz için SSD almıştık ve performansın büyük işlemlerde ne kadar önemli olduğunu kanıtlamıştık. Kendi bilgisayarıma da bir SSD almak için hiçbir çaba da sarf etmemiştim o zamanlar)

* * *

Geçen hafta bu bahsetmiş olduğum müşterim bana SSD ve RAM almaya karar verdi. Çok sevdiğim ve gerçekten uzun bir süre ona yazılımlar yazacağım, saygımı kazanmış bir insan. Hiçbir dediğimi de iki etmemiştir. Ödeme konusunda ben bir şey demeden direk kendisi hallediyor, varın gerisini siz düşünün.

Sipariş verirken bilhassa Samsung EVO 850 serisi seçmeye özen gösterdim önceki tecrübemden dolayı. 540Mb Read/520 Write şeklinde 250 GB’lik bir SSD aldık ve 8GB RAM. Şu an toplamda 12 GB RAM takılı bu bilgisayara.

Dün bilgisayarıma yeniden işletim sistemi kurdum.
Yazılımları kur, konfigre et, yedekten geri dön falan bunları saymıyorum bile altı(6) saatimi yedi nerdeyse ve hala eski HDD’mdeki verileri sunucuya gönderiyorum şu an bu yazıyı yazarken.

* * *

Altı buçuk(6.5) – Yedi (7) saat sonra..

Kurtay deli küfür etmeye başladı
Hem de nasıl..

Seni zeki! Önceden neden böyle bir şey yapmadın!

Oha Windows 10 Enterprise beş(5) saniyede açılıyor, projeyi Visual Studio 2015 Enterprise’da açmak üç(3) saniye; debug edilip veritabanına bağlanması, sorgunun cevaplanması sayfanın yüklenmesi nerdeyse iki buçuk (2.5) saniye! Yuh ….. …….! Yok artık!

Sen nasıl bir SSD çıktın lan!

HDD’nin canı cehenneme!

* * *

SSD’lerinde belirli bir ömrü olduğunu hatırlatırım.

* * *

Şimdi gidip deli gibi kod yazacağım.

Enis Kurtay YILMAZ