Forum: Ders Arası RSS
D ile Soket Programlama Hakkında
Avatar
huseyin #1
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: D ile Soket Programlama Hakkında
Merhaba Arkadaşlar
Ben soket programlama hakkında std.socket için birkaç örnek istiyorum bana yardımcı olursanız çok sevinirim
Teşekkürler
Huseyin
Avatar
Salih Dinçer #2
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bende bilmiyorum ama (bu arada diğer kategoriye yakışan bir konu) bakabiliriz...:)

Önce şu adresi inceliyorum...

https://github.com/D-Programming-Language/phobos/blob/mast…

Örneğin InternetHost sınıfı ile ilgili şu basit örnek iyi bir başlangıç olabilir:
 auto ih = new InternetHost;
 
 // Forward lookup
 writeln("About www.digitalmars.com:");
 if (ih.getHostByName("www.digitalmars.com"))
 {
     writefln("  Name: %s", ih.name);
     auto ip = InternetAddress.addrToString(ih.addrList[0]);
     writefln("  IP address: %s", ip);
     foreach (string s; ih.aliases)
          writefln("  Alias: %s", s);
     writeln("---");
 
     // Reverse lookup
     writefln("About IP %s:", ip);
     if (ih.getHostByAddr(ih.addrList[0]))
     {
         writefln("  Name: %s", ih.name);
         foreach (string s; ih.aliases)
              writefln("  Alias: %s", s);
     }
     else
         writeln("  Reverse lookup failed");
 }
 else
     writeln("  Can't resolve www.digitalmars.com");

Bir de Address sınıfı ilgimi çekti:

 writeln("About www.google.com port 80:");
 try
 {
     Address[] addresses = getAddress("www.google.com", 80);
     writefln("  %d addresses found.", addresses.length);
     foreach (int i, Address a; addresses)
     {
         writefln("  Address %d:", i+1);
         writefln("    IP address: %s", a.toAddrString());
         writefln("    Hostname: %s", a.toHostNameString());
         writefln("    Port: %s", a.toPortString());
         writefln("    Service name: %s",
             a.toServiceNameString());
     }
 }
 catch (SocketException e)
     writefln("  Lookup error: %s", e.msg);

Neyse, başka örnekler de vardır eminim. Şimdi sıra bunları deneyip yenileri türetmeye. Türettikçe paylaşalım olmaz mı?
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
Salih Dinçer #3
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Asıl sınıf da 2271. satırdaymış: https://github.com/D-Programming-Language/phobos/blob/mast…

Burada Socket sınıfı var ve port dinleme, açma, kapama, tanımlama her şey var. Kesinlikle işe yarar...:)
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
huseyin #4
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hmm teşekkürler inceliyorum  syn hakkındada biraz bilgi aradım sonuc olumsuz bulamadım
Huseyin
Avatar
zekeriyadurmus #5
Kullanıcı başlığı: Talha Zekeriya Durmuş
Üye Eki 2012 tarihinden beri · 701 mesaj · Konum: Samsun/Türkiye
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Rhodeus için web sunucusu yazarken ihtiyacım olmuştu. DMD içerisinde dmd2\samples\d\listener.d adresinde örnek bir socket uygulaması var. Aşağıdaki linkten de ulaşabilirsiniz.

http://pspemu.googlecode.com/svn-history/r300/trunk/dev/dm…

Zekeriya
Bilgi meraktan gelir...
Avatar
Salih Dinçer #6
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bu konuyu öğrenmek için nasıl bir yöntem izlemeli... :rolleyes:

Basitten karmaşığa gideceğiz ama nasıl? Mesela önce bir web adresinin çözmeye (IP resolve) mi  çalışsak ki yukarıda basit bir örneği var. Buradan basit bir ping/trace yazılımı geliştirebiliriz ve karşımıza çıkan sorunlar ile mücadele ederken bir bakmışız bir kaç alt başlığı öğrenmişiz bile...:)
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
zekeriyadurmus #7
Kullanıcı başlığı: Talha Zekeriya Durmuş
Üye Eki 2012 tarihinden beri · 701 mesaj · Konum: Samsun/Türkiye
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Charles gibi ağ izleme programlarıyla web sunucusu istek/yanıtlarını inceleyerek başlanılabilir. (Ben öyle yaptım)

Zekeriya
Bilgi meraktan gelir...
Avatar
huseyin #8
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #6
Salih Dinçer on 2013-04-13, 21:45:
Bu konuyu öğrenmek için nasıl bir yöntem izlemeli... :rolleyes:

Basitten karmaşığa gideceğiz ama nasıl? Mesela önce bir web adresinin çözmeye (IP resolve) mi  çalışsak ki yukarıda basit bir örneği var. Buradan basit bir ping/trace yazılımı geliştirebiliriz ve karşımıza çıkan sorunlar ile mücadele ederken bir bakmışız bir kaç alt başlığı öğrenmişiz bile...:)

bilgim var ama programlama konusunda soketlerle aram hiç iyi değil zaten internetle aram oldum olası hiç iyi olmamıştır
Huseyin
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Forum: Ders Arası RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-19, 04:12:44 (UTC -08:00)