Picproje Elektronik Sitesi

SERBEST BÖLGE => Programlama ve Algoritma => Konuyu başlatan: electronious - 25 Aralık 2011, 13:42:11

Başlık: Arayüz tasarımı tavsiye
Gönderen: electronious - 25 Aralık 2011, 13:42:11
Merhaba arkadaşlar,

Arayüz tasarımını öğrenmek istiyorum. C biliyorum ve biraz C++ bilgim var. Özellikle Microsoft VS 2010 ile çalışmak istiyorum. Bununla ilgili kaynak site-kitap vb. tavsiyelerinizi esirgemezseniz sevinirim.

İyi çalışmlar herkese
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: cicjoe - 25 Aralık 2011, 14:12:37
eger C++ kullanmayi dusunuyorsaniz http://www.amazon.com/Microsoft-Visual-Windows-Applications-Example/dp/1847195563 (http://www.amazon.com/Microsoft-Visual-Windows-Applications-Example/dp/1847195563) kitabi guzel. MFC anlatiyor.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: fryrmnd - 25 Aralık 2011, 14:41:40
c# isterseniz https://www.picproje.org/index.php/topic,33066.msg257092/topicseen.html#msg257092 videolar var. sırayla devam ediyor.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Tagli - 25 Aralık 2011, 16:24:36
Benim tavsiyem, Microsoft'a bağımlı olmamak için, çok kullanılan Qt, wxWidgets veya GTK+ gibi bir kütüphane kullanımını öğrenmen. Bunlardan GTK+'yı C ile de kullanabilirsin.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: RcALTIN - 25 Aralık 2011, 17:48:21
Alıntı yapılan: electronious - 25 Aralık 2011, 13:42:11
Merhaba arkadaşlar,

Arayüz tasarımını öğrenmek istiyorum. C biliyorum ve biraz C++ bilgim var. Özellikle Microsoft VS 2010 ile çalışmak istiyorum. Bununla ilgili kaynak site-kitap vb. tavsiyelerinizi esirgemezseniz sevinirim.

İyi çalışmlar herkese

Özellikle Microsoft VS 2010 ile çalışmak istiyor olduğuna göre, C++ bilgin olduğuna göre cevap zaten belli... Ben c++ dan fazla anlamam ama yanlış bilmiyorsam visual studio ile ister win32, ister .net tabanlı çalışılabiliniyor, c++'ın böyle bir güzelliği var. c# için win32yi unutun, fakat .net tabalı çalışacağım derseniz C bilginizden dolayı sizin için bu da bir seçenek...
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Sepiroth - 25 Aralık 2011, 18:15:51
Qt nokia tarafindan gelistiriliyor, fakat linuxta da windowsda da calisabiliyor.
.NET sadece windowsda calisiyor, arkadasin bagimliliktan kasti buydu bence:)
Ona bakarsaniz Java her turlu ortamda calisiyor, ama Sun gelistiriyor?
Bagimsizlik olayi platform bagimsizligi olmali, bunun da en iyi ornegi Java ve Qt.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: FullMetal - 25 Aralık 2011, 19:08:03
Alıntı yapılan: gerbay - 25 Aralık 2011, 16:35:50
Microsoft a bağımlı olmamak için denmiş de;  Qt kullanınca kime bağımlı olacak? Nokia ya mı? Evet.. Peki Nokia mı yoksa microsoft mu?

Hocam windows ortamı için GUI li programlar geliştireceksen kur "C++Builder" ı keyfine bak.. En azından diğerleri gibi kanser etmez..
Beni yanlış anlamayın bilmediğimden soruyorum, Qt de herhangi bir ücret ödemeden ticari projeler geliştirmek ve platform bağımsız (Embedded Linux, Mac OS X, Microsoft Windows, Linux/X11, Windows CE, Symbian, MeeGo, Haiku, Amiga OS) proje geliştirmek mümkün (Eğer yanlışım varsa düzeltin lütfen). Bana göre Qt un en büyük avantajları bunlar. C++Builder da Qt e karşılık ne tür cezbedici özellikler var?

Teşekkürler.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Sepiroth - 25 Aralık 2011, 19:43:30
Alıntı yapılan: gerbay - 25 Aralık 2011, 19:24:16
Qt de kullandım GTK da kullandım. Eğer ille de platform bağımsız olsun denmiyorsa C++Builder diyorum..

Qt ile ticari ürün geliştiriyorsanız Qt Commercial ürünü almanız ve parasını da ödemeniz gerekiyor.. Eğer Open Source proje yapıyorsanız bedavaya alıp kullanabilirsiniz..

Java dan bir nane olmaz, hele bu tip işler ile uğraşıyorsanız Java dan uzak durun. Java tarzı birşey istiyorsanız C# kullanın.. (şimdi kesin java cılar saldırır ama neyse)

Cross platform ile GUI li ne işiniz var bilmiyorum ama ihtiyacınız Windows üzerinde ise ısrarla C++Builder diyorum..

Hocam saldirmak gibi değil kesinlikle ama Java da bence gayet guzel bir dil:) ama tabikide supersonik değil :D
windows uzerinde olcaksa illa tabiki de C#, en azindan rahat olur. Ama ben mesela Java'ya daha yatkinim, hos ikisi ile de yazabiliyorum orasi ayri.
merak ettim gercekten, Java nin ne eksikligini gordunuz bizi de bilgilendirirmisiniz hocam? (ogrenelim buglarini:) )

edit: http://www.webdotdev.com/nvd/content/view/1042/204/
hantal ve cok yer kaplar diye biliyordum ama emin degildim, :D
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Sepiroth - 25 Aralık 2011, 20:12:42
Alıntı yapılan: gerbay - 25 Aralık 2011, 20:01:17
hocam birçok sebep var. Ben bug var anlamında yazmadım zaten. Arkadaş özellikle arayüz tasarlamak istediğini belirtmiş. Arkadaşı Java nın layout ları ile uğraştırıp kanser etmenin gereği var mı. O zaman diyebilirsiniz ki C# kullansın, ihtiyaca göre kullanılabilir ama bizim C# cı arkadaşların bazen sistem ile ilgili yapmak istedikleri işler için onlara DLL yazıyorum. Evet, kolay vs. ama her şeyin kendine göre artıları ve eksileri var. Arkadaş zaten C bildiğini C++ ı da biraz bildiğini yazmış. İstediği her işi hızlı şekide yapabilmesi açısından ben C++Builder dedim.. Her türlü isteği için component ler de var. Sürükle bırak koy çalışsın. Hem de C++ ın gücü ile. Yok eğer ben sabırlıyım, uzun sürmesi önemli değil derseniz Visual C++ ile MFC öğrenin.

Arkadaş ne tür yazılımlar ile uğraşacağını belirtmemiş; ben en hızlı şekilde ve her türlü sistem kaynağına da erişip yönetebilecek, programlayabilecek özelliklerde birşey kullanmasını tavsiye ederim. O da şu an en hızlı şekilde C++Builder ile olur..

Ben hepsini de kullanıyorum ama "özellikle" test araç gereçlerini C++Builder kullanarak gerçekleştiriyorum..

Oturup isterseniz windows driverı yazın, isterseniz her türlü sistem kaynağını "native" olarak kullanın, isterseniz de hızlı şekilde arayğz tasarlayın..

Evet Qt nin GTK nın vxWidgets ın da designerları var ama hiçbirinde C++Builder ın community si yok.. ister ücretli olsun ister ücretsiz olsun o kadar component sağlayısı yok..

Bir elektronikçi iseniz ve yapacağınız yaılımlar da biraz da işiniz ile ilgili olacaksa Java kesinlikle olmaz. C# da bazen olur bazen olmaz.. başka şeylere ihtiyaç duyrasınız.. C bilen arkadaşlarınıza DLL yazdırmak zorunda kalırsınız.. vs.. vs..

Bu arada Sun batmıştı ve Sun ı Oracle satın almıştı zaten.. Şu an Java, Oracle a ait..

yok hocam ben bug derken geyik yapiyodum ztn:) saka bir yana, bizim gibi (en azindan kendi adima konusayim) yuzeysel kullanan degil de, isin derinine kadar inmis ve bu sekilde kullanan bir insan oldugunuzu tahmin ederek ne eksikleri gordunuz onu merak ettim sadece:) yoksa inanilmaz bir sekilde kullanmasam da c++ tabi kide:) ama misal, tasarladigim donanimlara ufak tefek arayuz vs. yaparken java kullaniyorum, elim yatkin ve cogu temel isimi goruyor:) java gui'si evet cidden tirmalattirir adami, ama Android uzerinde program gelistirirken biraz rahat oluyo gerci:)
bu arada hep merak etmisimdir, mikroislemciler icin (misal stm32) c++ derleyici var mi? yani kutur kutur C de yaziyoruz da, c++ ile object oriented tadinda yapamazmiyiz yazilim?
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: electronious - 25 Aralık 2011, 20:34:21
Cevaplar için teşekkürler herkese.

C veya C++ ile opensource bir program yazmayı düşünüyorum. Açıkçası yazacağım program en azından şimdilik windows üzerinde çalışması yeterli. Visual studio ya alışkın olduğum için orda yazmak istiyorum. Qt yi duydum ama hiç bilmediğim için yanaşmak gelmiyor içimden. Elinizde güzel kaynak link vb. varsa paylaşırsanız sevinirim.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: cicjoe - 25 Aralık 2011, 21:19:30
QT4 icin bir kitabi upload ettim.
https://rapidshare.com/files/1413278029/C___GUI_Programming_with_QT_4_2nd_Edition.pdf (https://rapidshare.com/files/1413278029/C___GUI_Programming_with_QT_4_2nd_Edition.pdf)

acikcasi ben C# tercih ediyorum. win32'e erismek veya C'de yazilmis dll'e erismek mumkun. lazim olursa linux icin mono'da yazilabiliyor, .net kadar iyi değil ama oldugu kadar =)

Alıntı yapılan: Sepiroth - 25 Aralık 2011, 20:12:42
bu arada hep merak etmisimdir, mikroislemciler icin (misal stm32) c++ derleyici var mi? yani kutur kutur C de yaziyoruz da, c++ ile object oriented tadinda yapamazmiyiz yazilim?

IAR'da C++ secenegi mevcut. ufak islemciler icin pek tercih edilmiyor (kod boyutu biraz buyuyor class mlass derken), ama stm32 icin soruyorsan icin iyi bir secenek bence. tabi illa oop yazmak zorunda degilsin. ben MSP430 icinde C++ tercih ediyorum. sadece, degiskenleri blogun basinda tanimlama zorunlulugunun kalkmasi bile tercih sebebi benim icin =)
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: electronious - 25 Aralık 2011, 21:29:48
@cicjoe

İlgilendiğiniz için çok teşekkür ederim.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: cicjoe - 26 Aralık 2011, 00:06:00
evet hocam haklisiniz. IAR'in EWARM Compiler Reference dokumaninda bu konu hakkinda bir bolum de var, Effecient Coding for Embedded Applications basliginda. Gerci kendisi de optimize etmek icin birkac secenek sunuyor.

None (Best debug support)
Variables live through their entire scope

Low
Limited live-range for variables

Medium
Live-dead analysis and optimization
Dead code elimination
Redundant label elimination
Redundant branch elimination
Code hoisting
Peephole optimization
Some register content analysis and optimization
Static clustering
Common subexpression elimination

High (Maximum optimization)
Instruction scheduling
Cross jumping
Advanced register content analysis and optimization
Loop unrolling
Function inlining
Code motion
Type-based alias analysis

High secengi 3 farkli yontem sunuyor. Balanced/Size/Speed.

Tabi oop ile yazilim tasarimini guzellestirirken, bir yandan da efektif kod yazip, okunakligi ve tasarimi bozmayacak sekilde boyutunu dusurmeye calismak dogru olabilir. Eger yazilim uzun ve karmasik ise kod boyutunu ve hizini bir kenara birakip yazilim tasarimi uzerinde durmak daha iyi olabilir. Bu durumlarda zaten yuksek bir islemci secilecegi icin kod boyutu ve ram sorun olmaz sanirim. Diger durumlarda ise (yani yazilim uzun ve karmasik değilse) zaten kod boyutu cok olmayacaktir heralde. Ama yine efektif kod yazmak aliskanlik acisindan iyi olacaktir sanki.

Alıntı yapılan: gerbay - 25 Aralık 2011, 23:30:38
hocam kodun yazılmasına bağlı olarak kod boyutu çoğu zaman azaltılabilir

Dediginize katiliyorum.
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Sepiroth - 26 Aralık 2011, 08:52:48
c++ ile yazmak icin tabi alt yapi suruculeri/kutuphaneleri yoksa kendimiz yazmak zorundayiz sanirsam:)
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: NecroCapo - 26 Aralık 2011, 09:38:03
Bir çok projemde Mono Develop-Mono'yu kullandım, Hem linux ortamında çalışıp,  hem de C# ile kod yazıyorum. Platformdan bağımsız (Windows,Linux,Mac, hatta Iphone ve Android), açık kaynak ve üstelik ticari uygulamalarınızda da kullanabiliyorsunuz.  Visual Basic,C#,C,C++,Vala hangi dille isterseniz yazın. Ayrıca Gtk# için de arayüz tasarımını, Visual Studio'da olduğu gibi kolayca, GUI üzerinden yapabilirsiniz. http://monodevelop.com/
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: Burak B - 26 Aralık 2011, 11:01:52
ASM kullan ASM :)
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: ErsinErce - 28 Aralık 2011, 06:39:23
NecroCapo hocam mono-project ile mono-develop arasındaki fark nedir kısaca anlatabilir misiniz?
C++Builder 64 bit desteği vermeyince biraz farklı çözümler aramaya başladım (gerbay hocam kızmayın)
C++ üzerinden 64 bit desteği de veren bir compiler aradığımda hep multi platform olarak karşıma çıktı
Mono dikkatimi çok çekti ama project ile develop arasındaki farkı avantaj-dezavantajlarını pek anlayamadım

aklımda şuan gcc vb bir compiler ile C++ üzerinden dll ve VS yada mono ile C# üzerinden arayüz ihtiyaçlarını karşılamak var
hepsine hakim olmak zaman alacaktır ama ileriyi düşünürsek en mantıklı şu an buymuş gibi geliyor
Başlık: Ynt: Arayüz tasarımı tavsiye
Gönderen: NecroCapo - 28 Aralık 2011, 12:54:04
Alıntı yapılan: ErsinErce - 28 Aralık 2011, 06:39:23
NecroCapo hocam mono-project ile mono-develop arasındaki fark nedir kısaca anlatabilir misiniz?
C++Builder 64 bit desteği vermeyince biraz farklı çözümler aramaya başladım (gerbay hocam kızmayın)
C++ üzerinden 64 bit desteği de veren bir compiler aradığımda hep multi platform olarak karşıma çıktı
Mono dikkatimi çok çekti ama project ile develop arasındaki farkı avantaj-dezavantajlarını pek anlayamadım

aklımda şuan gcc vb bir compiler ile C++ üzerinden dll ve VS yada mono ile C# üzerinden arayüz ihtiyaçlarını karşılamak var
hepsine hakim olmak zaman alacaktır ama ileriyi düşünürsek en mantıklı şu an buymuş gibi geliyor

Aslında ikisi de aynı şeyler, şöyle ki :

Mono-Project aşağıdakilerin tümüne birden verilen isim.

(*) Şu an, mouse ile butonu form üzerine koy-bırak tarzındaki arayüz tasarımı için Gtk kullanılıyor. Sonraki sürümlerde Windows.Forms da olacak, geliştirme süreci devam ediyor. Ama tabii ki  kodla tasarım yapmak için(dinamik olarak) Gtk kullanmadan Windows.Forms kullanabiliyorsunuz.

Sonuç olarak 
Microsoft Visual Studio ortamına ve dillerine (C#, VB.Net vb.) alışıksanız,
Uygulamanızı linux,mac vb ortamlarda multi-platform kullanmak istiyorsanız,
Ticari uygulama yapmak, fakat MS'daki Bill Amca'ya para yedirmek istemiyorsanız,
Açık kaynak kod felsefesini desteklemek isterseniz,
GNU ve Linux kelimeleri size çok şey ifade ediyorsa.
Mono'yu tavsiye ederim :)