Bu Blogda Ara

9.12.2009

C# ta dosya,exe çalıştırma

C# da uygulama geliştirirken herhangi bir yerdeki dosyayı saki fare ile tıklanmışta açılmış gibi açma ihtiyacınız olabilir. mesala bir butona tıklandığında c:\yeni.doc dosyasını winword.exe ile açmak isteyebiliriz. yapmmaız gereken işlem çok basit.

System.Diagnostics.Process.Start("c:\\yeni.doc");

yada bir exe dosyasını, açmak istediğiniz dosya adı vererekte açabilirsiniz

System.Diagnostics.Process.Start("IExplore.exe", "www.iumuhendis.blogspot.com");
System.Diagnostics.Process.Start("Winword.exe", "c:\\yeni.doc");
System.Diagnostics.Process.Start("EXCEL.EXE", "c:\\yeni.xls");

3.10.2009

Google Crome


Güzel bi anlatım tarzıdır resimler... Resimdekini cümlelere dökerek anlatmaya çalışsak aynı etkiyi verirmiydi acaba ???

7.09.2009

Academic Earth- video courses

http://academicearth.org/ -Full video courses from leading universities.

1. What is Academic Earth?

Academic Earth is working to bring together the best available content across many subjects and distribute it in an engaging and useful way to learners worldwide.


2. How many videos are available on Academic Earth?

As of this writing, there are over fifteen hundred videos from MIT, Stanford, Berkeley, Harvard, Princeton, and Yale. We are adding more every day. Some of these are grouped into courses, which each contain anywhere from 4 to 50 lectures.

İki Fıkra- İki Hakikat

Juan, motosikleti ile Meksika sınırına gelir. Arkasındaki iki büyük çantayı gören sınır polisi şüphelenir ve içinde ne olduğunu sorar . Juan: 'Yalnızca kum', diye yanıt verince polis: - Aç bakalım çantaları, der. Juan çantaları açar, polis didik didik kontrol etmesine rağmen kumdan başka birşey bulamaz çantada !Bununla yetinmeyen polis, gece yarısına kadar kumu her tür tahlilden geçirtir ancak saf kumdan başka birşey yoktur ! Polis, çantalarını Juan'a geri verir ve sınırdan geçmesine izin verir.

Ertesi gün Juan motosikletinin arkasında iki büyük çantayla tekrar sınırda belirir. Polis Juan'ı gene durdurur, didik didik arar, bir şey bulamaz ve Juan'ı serbest bırakmak zorunda kalır. Bu olay, polis emekli olana dek yıllarca devam eder !

Bir gün emekli polis Meksika'da bir barda otururken Juan'ın içeri girdiğini görür ve derhal yakasına yapışır; - Senin yıllardır bir şeyler kaçırdığından eminim. Çıldıracağım... Geceleri uyku uyuyamıyordum senin yüzünden. Lütfen anlat bana ne kaçırdığını.
Aramızda kalacağına emin olabilirsin.

Juan gülümseyerek yanıtlar: 'Motosiklet'

DETAYLA BOĞUŞURKEN ÖZÜ KAÇIRMAYALIM :)

********************************************************

ESAS AKIL

Bir akıl hastanesini ziyareti sırasında, adamın biri sorar:
- Bir insanın akıl hastanesine yatıp yatmayacağını nasıl belirliyorsunuz?

Doktor:
- Bir kuveti su ile dolduruyoruz. Sonra hastaya üç şey veriyoruz. Bir kaşık, bir fincan ve bir kova. Sonrada kişiye küveti nasıl boşaltmayı tercih ettiğini soruyoruz. Siz ne yapardınız?

Adam:
- Ooo ! Anladım. Normal bir insan kovayı tercih eder. Çünkü kova kaşık ve fincandan büyük.

- Hayır, der doktor. Normal bir insan küvetin tıpasını çeker.

BİZE SUNULANLARIN DIŞINDA DA ÇÖZÜM BULABİLMEKTİR AKIL :)

20.08.2009

web girişimciliğine bir örnek takasmerkezi.com



TakasMerkezi.com, genç türk girişimcilerinin de dünya çapında web projeleri çıkarabileceğini kanıtlamak hedefiyle yayında.
Ve bir garaj hikayesi. Her ne kadar bir yıl boyunca çalıştığımız ofisimizin garajı olmasa da...

Hep yabancı web başarı öykülerinde duyduğumuz bir mekandır garajlar. Genelde iki kafadar bir araya gelir ve fikirlerini hayata geçirmek için kolları sıvar. Ve ilk ofisleri genelde evlerinin kullanılmayan garajlarıdır. Steve Jobs ve Steve Wozniak'ın Apple'ı, Jeff Bezos'un Amazon.com'u, Pierre Omidyar'ın Ebay.com'u, Bill Gates ve Paul Allen'in Microsoft'u, Larry Ellison'un Oracle'ı ve hatta Larry Page ve Sergey Brin'in Google.com'u..
Hepsinin ortak noktası, sadece bir hayalle yola çıkmış olmalarıdır. Neredeyse sıfır sermaye, garaj veya ufak ofisler, kendilerinden başka kimsenin inanmadığı fikirler... Şimdi hepsi dünyayı değiştiren girişimler olarak kabul ediliyor.

"Kümesteki Kartal Neden Uçmaz?" isimli kitabında Burak Büyükdemir "Bir kere bizde evlerin garajları yok. Hatta müstakil evler bile çok az. Müstakil bir eviniz varsa ve garajında bir internet şirketi açıyorsanız bu başka bir sorun. Amerika'da bu başarı öyküleri evlerin pek rağbet edilmeyen garajlarında başlıyor. Ofis olarak, evin kullanılmayan bu bölümlerini kullanılıyor. Peki biz ne yapacağız şimdi? Bizim bir garajımız bile yok" diyor.


TakasMerkezi.com da bir garaj hikayesi çünkü arkasında başarıya odaklanmış bir ekibin hayalleri, emekleri ve cesareti var.
Garaj hikayesi çünkü, büyük hayalleri gerçeğe dönüştürmek için, şartların iyileşmesini beklemeyen, "bizden çıkmaz" anafikirli fren balataları olmayan zihinlerin ürünü.

Biz bu yolda koşmaktan, tüm dünyada adı geçen bir başarı (garaj) hikayesi olarak kabul görene kadar, vazgeçmeyeceğiz.
Takasmerkezi.com - parasız ticaretin yeni adresi olmak hedefiyle; odaklanarak, çalışarak, gemileri yakarak...

ve bu hikayenin baş kahramanı ile güzel bir röportaj:

http://www.kirtok.com/tr/takasmerkezicom-kurucusu-onder-eren-roportaji/

tüm bilişim eğitimi alan(bilgisayar mühendisi yada programcısı) öğrenciler muhakkak okumalı diyorum. neden sizlerde yapamayasınız.

29.07.2009

farklı uzunluklu string dizilerini dikey eklemek - Matlab

(string array vertical concatenation with different lengths in matlab)

matlabda farklı uzunluklu string dizilerini birbirine dikey olarak ekleyerek matris elde etmek istiyordum, ama birtürlü yapamıyordum.

dikey string ekleme için strvcat (string vertical concatenation) kullanılıyor.

>> s=strvcat('birinci','sekizinci')
s =
birinci
sekizinci

benim istediğim ise biraz farklı, ben zaten kendisi dizi olan stringleri eklemek istiyorum mesala bir cümleyi kelimelere bölüp hecelerine ayırdım ve herbir kelimenin bir satırda , hecelerinde sütünlarda yer almasını istiyorum;

x birinci kelimem ve y ikinci kelimem mesala;

>> x={'bi' 'ri' 'n' 'ci'}
x =
'bi' 'ri' 'n' 'ci'

>> y={'se' 'ki' 'zi' 'n' 'ci'}
y =
'se' 'ki' 'zi' 'n' 'ci'

aynı fonksiyon ile eklemeye çalıştığımda karekter dizisi vermek gerektiğine dair hata veriyor.

>> s=strvcat(x,y)
??? Error using ==> char
Inputs must be character arrays.

Error in ==> strvcat at 29
s = char(varargin{notempty});

bende matris olarak değil hücre olarak oluşturayım dedim şöyleki:
(süslü parentez içine yazıldığında hücre olarak işlem görüyor)

>> s={x;y}
s =
{1x4 cell} {1x5 cell}

bu durumda biri 4 heceli diğeri 5 heceli iki diziyi matrise koymuş oluyorum. aslında benim s matrisim 2 elemanlı, ama herbir elaman kendi içinde farklı uzunluklu diziler ihtiva ediyor.

bu durumda birinci satıra yani ilk dizime ulaşmak istersem dizinin indisini yine süslü parentez içinde vermem lazım:

>> s{1}
ans =
'bi' 'ri' 'n' 'ci'

1. kelimenin hecelerine ulaşmak istersem:

>> a=s{1}
a =
'bi' 'ri' 'n' 'ci'
>> a(1)
ans =
'bi'

ve sonucu karakter dizisine çevirmek istersek:

>> char(s{1})
ans =
bi
ri
n
ci

31.05.2009

Error: Java heap space

java uygulamarında özellikle büyük boyutlu XML dosyası okuma işlemlerinde eğer şu hatayı (java.lang.OutOfMemoryError: Java heap space) alıyorsanız uygulamanız java sanal makinasının ram'den kullanabileceği maksimum hafıza sınırını aşıyor demektir.

minimum 32 MB, max 128MB varsayılan sınır değerleridir.
sınırları değiştirmek için 2 yöntem:

1- comut satırından(comman line) - minumum 128 MB, maximum 512MB olarak ayarlıyoruz-

java -Xms128M -Xmx512M

2- kullandığımız ide üzerinden(eclipse)

Run/Run configurations (yada run as properties)/ Arguments/VM Arguments
buradaki yazı alanına aşağıdaki kodu yazıyoruz. ve Run diyoruz. başındaki -(tire) işaretini unutmuyoruz.

-Xms128M -Xmx512M

24.05.2009

Sıra dışı başarılı gençler - Melih Arat

Aykut Karaalioğlu ve Ali Rıza Babaoğlan İtalya, Almanya, Polonya, İspanya, Fransa ve Çin medyasının web sitelerinin ve medyasının söz ettiği iki genç. Aykut ve Ali Rıza, Marro.ws isimli yenilikçi sosyal ağ internet hizmetini geliştirdiler.

Bu hizmet nedir? İnternette hoşunuza giden yazıları, marro.ws aracı ile işaretliyorsunuz; ardından sadece işaretlediğiniz bölüme siz ya da başkaları erişebiliyor. Bir web sitesi ya da upuzun bir metnin değil, sadece beğendiğiniz bölümler saklanıyor; paylaşılıyor. Böylelikle internet denilen bilgi deryası / bilgi çöplüğünde bulduğunuz yakutlar ve mücevherler açığa çıkarılarak paylaşılabiliyor. Meraklıları marro.ws adresinden deneyimleyebilirler.

Bilkent Üniversitesi Uluslararası İlişkiler öğrencisi Aykut Karaalioğlu ile Başkent Üniversitesi Bilgisayar Mühendisliği bölümünden mezun Ali Rıza Babaoğlan'ın bu yenilikçi ürünü, İtalya'da yıllık internet konferansında ve Almanya'da Avrupa'nın en büyük konferansı Nex'09'da sunuldu. Zaten projelerinin Avrupa ve dünyada bu kadar fazla ilgi görmesinin nedeni bu konferanslardaki sunumlar. Amacım bu iki gencin yenilikçi ürünlerini tanıtmak değil, bir parça olsun bu işi yaparken henüz 21,5 yaşında olan bu gençlerin vizyon ve eylemlerini paylaşmak. Önce daha yakından tanıdığım Aykut Karaalioğlu'ndan başlayayım. Aykut bir gün asistanım olmak için başvuruda bulundu. Ankara'da o sırada bir asistanım olmadığı için deyim yerindeyse kendisini asistan aday kadrosuna aldım. Görüşmelerimiz sırasında Aykut'un önemli bir işadamı olmak istediğini net bir şekilde gördüm. Çok az 20 yaşında genç, kararlı bir şekilde "ben büyük işler yapacak bir işadamı olacağım" diyor. Aykut kendisine inanmış bir gençti. Aykut'un bu fikrini babası da paylaşıyordu ve aynı zamanda o da işlere girişmesi konusunda teşvik ediyordu. Annesi de aynı şekilde bu desteği veriyordu. Pazarlama iletişimi konusunda dünya çapındaki aylık toplantı ağı Likemind'in Ankara ayağını oluşturdu. Bu ağ bir kafede pazarlama iletişimine ilgi gösteren insanların toplanması şeklindeydi. Bu arada Aykut, Amerika'da değişik toplantılara katıldı; Amerika'dan kitaplar aldı ve kendini internet işlerine odakladı. İnternet işlerine odaklanmasının nedeni, internetin büyük sermayeler olmadan iş kurulabilir ve hızlıca ilerleme sağlanabilir bir alan olmasıydı. Aykut'un aldığı radikal kararlardan bir tanesi de kendi Facebook ve benzeri hesaplarındaki tüm Türk tanıdıklarını silip sadece yabancı insanları bırakmaktı. Çünkü küresel bir pazarlama ve küresel ağ sadece yabancılar ve yabancılarla görüşen insanlarla büyüyor. Likemind toplantısı, insanın çevresini genişletmek için iyi bir buluşma ve Aykut, ikinci buluşmada Ali Rıza Babaoğlan ile tanışıyor.

Ali Rıza Babaoğlan, ödül koleksiyoncusu bir bilgisayar mühendisi. IBM tarafından dünyanın gelecek vaat eden 75 mühendisinden biri olarak seçildi. Microsoft tarafından da Türkiye'deki en iyi öğrenci destekçisi seçildi. Unvanları bu yazıya sığmayacak kadar uzun. Bu ikili takımda Ali Rıza Babaoğlan, teknik vizyon, yönetim ve uygulama becerilerine sahip. Aykut ise sosyal ağ kurma ve pazarlama becerilerine sahip. İkisi bir araya gelince ortaya bir başarı öyküsü çıkıyor. Avrupa'daki sunumlar için bir melek yatırımcıya ihtiyaç duyuyorlar. Çünkü Almanya ve İtalya'daki sunumlara gidebilmek için bütçeye ihtiyaç var. Bu bütçeyi Aykut'un çabaları ile buluyorlar. Ama Ali Rıza Babaoğlan'ın gayretleri olmasa proje teknik olarak ortaya çıkamayacak.

Sonuç: Vizyon+Ürün+Sosyal Ağ+Ekip Çalışması=Başarı.

kaynak : http://www.zaman.com.tr/yazar.do?yazino=851076&title=sira-disi-basarili-gencler

changing eclipse workspace / eclipse çalışma alanını değiştirmek

File \ switch workspace\
select in exitsing workspace or click other and browse new work space.

dosya menüsünden workspace değiştirmeyi seçiyoruz , iki alternatif çıkıyor:
1- var olan workspace ler arasında geçiş yap
2- diğeri seçerek yeni workspace tanımlama.

bu kadar :D

24.04.2009

Asp.net 2.0 ile mail gönderme

.net 2.0 ile web sitemiz üzerinden mail göndermek istiyoruz. nasıl yaparız.

using System.Net.Mail; (2.0 dan önceki örneklerde using System.Web.Mail; kullanılıyordu)

try{
MailMessage msgMail = new MailMessage("KimdenMail","KimeMail");
msgMail.Subject = "asp.net ile mail gönderme";
msgMail.IsBodyHtml = true;
string strBody = "ASP.NET 2.0 c# mail gönderme"
msgMail.Body = strBody;
//SmtpClient ayarları tanımlamada veriliyor , varsayılan port 25 dir.
SmtpClient istemci = new SmtpClient("smptpServerAdres", smtpPort);
istemci .Send(msgMail);

Response.Write("Mail Gönderildi");
}
catch (Exception ex)
{
Response.Write("Hata Oluştu:
");
Response.Write(ex.Message);
}

not: eğer smpt ayarlarının web.config de olmasını istiyorsak web confige system.net\mailsettings\smtp\network iç içe taglerini ekliyoruz.(nasıl eklendiği için kodlardan web.config dosyasına bakınız) Ve smtp istemcisini tanımlarken aşağıdaki gibi kullanıyoruz.

SmtpClient istemci = new SmtpClient();

Basit ve gelişmiş(gizli,gelişmiş, eklenti(attach)) mail gönderme için örneği buradan indirebilirsiniz.

15.04.2009

Bilişim Çağında Bilgisayar Mühendisliği Eğitimi

Bilişim teknolojisinin hızlı gelişimi, hem günümüz toplumlarının ihtiyaçlarının hızla karşılanabilmesinde, hem de pek çok yeni ihtiyaçları doğurmasında önemli bir rol oynamaktadır. Teknolojik gelişme ise, mühendisliğin özellikle bilgisayar mühendisliğinin gelişimine o da kaliteli bir mühendislik eğitimine bağlı bir olgudur. Bu yazıda, bilgisayar mühendisliği eğitiminin genel durumu değerlendirilecek ve kalitenin artırılmasına yönelik düşüncelerimiz yer alacaktır.

Teknolojinin hızını kavrayabilmek için, bilgisayarların değişim serüvenine göz atmak yeterlidir. 1946 yılında, ancak saniyede 5000 işlem yapabilen ve büyükçe bir sinema salonuna yerleştirilebilen zamanının teknoloji harikası olan ENIAC isimli bilgisayar bilgi giriş ve çıkışı oldukça zor olmasına rağmen, hesaplamalardaki hızı sayesinde önemli projelerde kullanılmıştır [1]. Bugün ise, bilgisayar teknolojisi , Intel Core 2 Quad T9400 işlemcili 4 Ghz saat frekanslı, 600 Mhz çekirdek ve 900 MHz de bellek frekansında çalışan süper dizüstü bilgisayarların üretildiği noktaya ulaştı[2].

Mühendislik Eğitiminin bu büyük hıza ayak uydurabilmesi için, teknolojinin ihtiyaçlarına cevap verecek çağdaş bir formata kavuşması ve daha önemlisi sürekli kaliteyi hedef alması zorunluluğu bulunmaktadır. Temel alan sayılan Elektrik Mühendisliğinden doğan ve son 20-25 yılda, endüstriyel gelişmenin sonucu yeni bir mühendislik alanı olarak ortaya çıkan Bilgisayar Mühendisliği; bilgisayar bilimleri, bilgisayar donanımı ve bilgisayar yazılımı olarak 3 anabilim dalına ayrılır. Günümüzde, bazı üniversitelerde Yazılım Mühendisliği ve Enformatik Mühendisliği isimli bölümler bulunması Bilgisayar Mühendisliğinin de bağrından yeni alanlar doğurduğunu göstermektedir.

Temel ilgi alanımız olan Bilgisayar Mühendisliği Eğitiminin kalitesi çağdaş ders programları ve nitelikli öğretim üyesi sayısı ile doğru orantılıdır. Ders programlarının hazırlanmasında, uluslararası standartlar ve ülkenin koşulları çok önemli bir rol oynarlar. Bilgisayar Mühendisi çok iyi bir matematik ve fizik altyapısına sahip olması gerekir. Oysa ülkemizde temel eğitim seviyesinde bu altyapı kurulamadığı bilinen bir gerçektir. Bilgisayar Mühendisinin kazanması gereken önemli bir araçta analitik ve algoritmik düşünme tarzıdır. Bunun geliştirilmesi, ilk ve orta öğretimde öğrenciye verilen ezber eğitimi yerine, düşüncenin geliştirilmesi ve yorum yapma kabiliyetinin artırılması ile mümkün olacaktır.

Kaliteli eğitimin diğer unsuru olan, nitelikli öğretim elemanı sorunu tüm alanlarda problem olarak karşımıza çıkmaktadır. Ancak Bilgisayar Mühendisliğinde nitelikli olması bir yana öğretim üyesi bulmak dahi çok güçtür. Zira akademiye yatkın nitelikli öğrencilerin her zaman sektörde iş bulmaları veya yurtdışına çıkmaları mümkün olduğundan üniversitelerimizin bilgisayar mühendisliği bölümleri öğretim üyesi açıklarını kapatamamaktadırlar.

Yazılımcılar arasında yaygın olan "Öğretmek program geliştirmekten zordur" düşüncesi eğitim işinin çok zor bir iş olduğunu, öğretim elemanının bilgi birikimi ile birlikte iyi bir deneyiminin de olmasını gerektirir. Batıda, çoğunlukla derse sadece profesörler ve doçentler girebilir, araştırma görevlileri giremez. Ancak, çoğu üniversitelerimizde öğretim elemanı açığı, deneyimsiz araştırma görevlilerini ders vermeye zorladığından kalitenin önünde bir engel teşkil etmektedir.

Son söz, ülkemizde eğitimin özel olarak bilgisayar mühendisliği eğitiminin kalitesine etki eden kuşkusuz daha pek çok faktör varolmasına rağmen, bu yazıda sadece birkaç tanesini ele alabildik. Zamanımızın en önemli değerlerinden biri, toptan kalite anlayışının her alana yayılması olduğundan, eğitim de bunun altyapısını kazandırmayı hedeflerse, problemlerimizin büyük çoğunluğunun çözüme kavuşacağına olan inancımı belirtmek isterim.

Örnek ER(varlık-ilişki) Diyagramları

Bu akşam sınav sorusu için örnek senaryo arıyordum. Bilisim kulübündeki aşağıdaki yazı karşıma çıktı. Adresi verilen site ise beni şoke etti. O kadar çok konu ile alakalı diyagram varki anlatamam. Yani Amerika'yı yeniden keşfetmeyin (öğrenci iseniz biraz keşfedin tabiki, çünkü bu öğrenmeniz için gerekli), projenizle alakalı konuyu bulun diyagram karşınızda.


aynen yazıyorum bilisim kulübünden :

Çok değişik konularla ilgili olarak veritabanı tasarımları (ER Diagram) yayınlayan bir web sitesi bu. Diyelim ki hastane programı yazacaksınız. Hastalar, doktorlar, vb. bir sürü tablo tanımlamanız, aralarındaki ilişkileri belirlemeniz gerekir. Bu sitede yapılmışı var.

http://www.databaseanswers.org/data_models

Bu siteyi kar'la ilk gördüğümüzde bir anlam veremedik. Bir insan evladı nasıl ve neden böyle bir çalışma yapar ki? Sonra şuna karar verdik: Bu siteyi yapan adam bir tür danışman. Uygulamaların analiz aşamasında programcılara yardımcı oluyor sadece. Bu sayede bir sürü uygulama analizi yapma şansı olmuş olabilir.
18 Ekim 2006 16:53
Ve bence bu diyagramların hazırlanmış veritabanlarının pazarlamasınıda yapıyor. çünkü bazı diyagramlar için access dosyalarının olduğunu söylüyor ve maille iletişime geçilmesini istiyor.

22.02.2009

DataColumn.AutoIncrement özelliği


c# veri listelemek için bir çok nesne vardır. listbox,grid,repeater,listview vs vs.
eğer listeleme yaparken verinin sıra numarası gibi bir kolon(sütun) eklemek isterseniz yapmanız gereken işlem çok basit.
öncelikle bir datatable nesnesine ihtiyacımız olacak veriyi veri tabanından çekip yükleyecek. ve bir dataColumn lazım oda sıra numarası kolonu olacak.
//otomatik arttırmaya sahip bir kolon inşa ediyoruz.birer birer artsın diyoruz.

DataColumn dcsira = new DataColumn();
dcsira.AutoIncrement = true;
dcsira.ColumnName = "sirano";
dcsira.DataType = typeof(int);
dcsira.AutoIncrementSeed = 1;

//bir tablo oluşturup, kolonlarına kendi kolonumuzu ekliyoruz.
DataTable dt = new DataTable();
dt.Columns.Add(dcsira);

//veritabanına bağlantı ve adapter tanımlıyoruz
SqlConnection baglan = new SqlConnection("Data Source=(local);Initial Catalog=master;User ID=sa;Password=sa");
SqlDataAdapter da = new SqlDataAdapter("SELECT TOP (10) name FROM spt_values", baglan);

//adapterin fill metodu ile tablomuza sorgumuzdan dönecek verileride ekliyoruz.
baglan.Open();
da.Fill(dt);
baglan.Close();

artık dataTable nesnemiz 2 kolonlu(sirano,name). sirano yu biz oluşturduk ki değerleri 0 dan başlayıp veri setimizin sayısı kadar birer artarak gidiyor, name ise veritabanından gelecek. Burada oluşturduğumuz kolonu önce tabloya ekliyoruz, sonra veritanabından geleni ekliyoruz bu sıra önemli. zira önce fill yapıp sonra kendi kolonumuzu eklersek bizim kolonun değerleri boş kalır.

uygulama: bir websayfası üzerinde repeater nesnesi ile verilerin listelenmesi uygulamasını buradan indirebilirsiniz.

21.02.2009

asp.net'te form,panel DefaultButton özelliği

farzedelim bir sayfada üye giriş kısmı (kullanıcı adı,şifre için textbox ve giriş için buton) ve üye kayıt kısmı (bilgiler için textboxlar ve kaydet için buton). bu durumda sayfada 2 tane buton olmuş oluyor. kullanıcı temayüllerine(eğilimlerine) bakacak olursak çoğu kişi giriş yada kaydet butonuna fare ile basmak yerine texboxları doldurup enter tuşuna basıyor. böyle bir durumda enter ile hangi buton aktif olarak çalışacak karmaşası karşımıza çıkıyor.

bunun için şöyle bir çözüm varmış asp,php gibi dillerde. Her ayrı kısmı(üye giriş ve kayıt) ayrı ayrı form tagları içene alıyor ve er formun DefaultButton özelliğine ilgili butonu veriyormuşsun. ama aspn.nette artık masterPage ile sayfalarda tek form olmaya başladı. demek onun yerine başka bişey olmalı diye düşününce Paneller imdada yetişiyor. şöyleki artık herbir bölümü bir panel içine alıyorsun ve panellerin default buton özelliğini ilgili buton yapıyorsun. böylece kullanıcı giriş bölümü paneli içindeki textboxlara veri giyor ve entera basıyorsa giriş butonu, kayıt paneli içindeki textboxlara veri giriyor ve entera basıyorsa kaydet butonu çalışıyor. sorunda çözülmüş oluyor :D

not: sorun ve çözümü için teşekkür ederim Kâzım :). Öğrencilerimden öğrenmeyi herzaman sevmişimdir...

örnek uygulama: (Kâzım derki)

Resimdeki gibi 3 textbox ve 3 buton var. imleç hangi texboxta ise entera bastığımızda onun altındaki butonun eventi çalışsın istiyorum.

çözüm: her grubu bir panel içine alıp panelin default buton özelligine panelin içindeki butonun ID'sini yazmamiz gerekiyormus.Sunun gibi yani :

4.02.2009

Java e-doküman

1- Java Tutorials: http://home.cogeco.ca/~ve3ll/jatutor0.htm
2- Java Lecture Notes: http://www.cafeaulait.org/course/

Veritabanlı Program Geliştirme

Veritabanlı program geliştirecek bir yazılımcı, acemilik döneminde özellikle veritabanı kısmındaki sıkıntıların(veritabanı geliştiriciliği başlı başına bir olay zaten :D) yanında bu veri tabanını kullancak kişilere hazırlayacağı arayüz için bir sürü sou işareti vardır kafasında, yada bu soruları soramıyordur bile daha : ) :

  • arayüzde ki formlarda neler olmalı
  • hangi tasarımda bilgiye ulaşmak, güncellemek, eklemek daha kolay olur
  • yönetici ne tür raporlar ister
  • raporlar nasıl tasarlanmalıdır
gibi daha arttırılabilecek bir sürü soru . Bu acemilik dönemini aşamanın en güzel ve kolay yolu örnek projeler inecelemektir. küçük çaplı büyük çaplı fark etmez demeyelimde başlangıç fark etmez diyelim. (tabi büyük projenin içinde boğulmamak şartı ile :)

peki örnek projeyi nerden bulacak, ya bi yerde işe başlayacak orada görecek, ki firmalar her projesini göstermez yada netten örnek projeler bulacak.

Tam burada bugün imdadıma acsess yetişti. Gülmeyin, accessden ne çıkar demeyin. Northwind adında örnek bir veritabanı ve kullanıcı arayüzü var ( biliyorsunuz accesste kullanıcı arayüzü tasarımıda yapılabiliyor) . inceledim gerçekten hoşuma gitti. öğrencilere birtürlü anlatamadım, ara ara projelerinde şöyle olmalı böyle olmalı dediğim noktaların büyük kısmını bu arayüzde gördüm. bunda sonra ilk dersteki işim öncelikle bu veritabanını ve arayüzü tanıtmak olacak.

peki nasıl ulaşabiliriz bu veritabanına access > yardım/help> örnek veritabanı/ samples databases > northwind.

öncelikle yüklemenizi isteyebilir internetten , evet diyin çıkan soruyo. işlem tamamdır.

24.01.2009

Attempt to execute SCRIPT .... as a function

Matlab Hataları/Errors

Hata : Attempt to execute SCRIPT fonksiyonadi as a function
Sorun : Dosya adı ile Fonksiyon adının aynı değil. (the file name and function name are not same)
Çözüm : function [geriDonenDegerler]=fonksiyonAdi (paramatreler)
buradaki fonksiyonAdi ile dosyanın isminin aynı olması gerekir. Ya fonksiyon adını yada dosya adını düzeltin. (the file name and function name have to be same )

5.01.2009

CvZip Bilişim Sektöründe Kariyer

- zaten bisürü kariyer sitesi var, bu nerden çıktı ?
- .... gibi kendini ispatlamış siteler varken yenilerin şansı yok!
- vs vs

bir sürü şey söylenebilir olumsuz anlamda ama birde işin diğer tarafına bakmak lazım.

- sektör bazlı olması güzel
- yeni girişimcilerin olması güzel
- ilan sayısı hiç de fena değil
- arama yaparken boğulmaya gerek yok, çünkü zaten sektörel
- freelance ilan modülü var, ve direk menu olarakda ayrı
- 'uzamanına sorun' başlıklı forum modülü var, ve puan sistemi var

daha belki nicesi...

niye bardağın dolu tarafına bakmayalım ki :)


cvZip.com - Bilişim Sektörünün Yeni Kariyer Platformu cvZip.com - Bilişim Sektörünün Yeni Kariyer Platformu