22 Ağustos 2013 Perşembe

insufficient memory to continue the execution of the program. (mscorlib)

SQL serverda açtığınız Database'de 50 MB'dan büyük bir script çalıştırmak istediğinizde alacağınız hata tam olarak başlıktaki gibidir. Bu hatanın çözümü de oldukça basit:

Developer Command Prompt VS 'yi açarak scriptinizi çalıştırmalısınız.

osql -S <SQL Server IP/Name> -d <DB Name> -E -i <sql script file path>

Please configure as below:
 -S ServerAdı/ServerIp
 -d Database Adı

Eğer ki bunu uzak bir makinede yapmanız gerekiyorsa kullanıcı adı ve şifresinizi de yazmalısınız. O zaman da aşağıdaki şekliyle kullanabilirsiniz:

sqlcmd -S <SQL Server IP/Adı> -d <Database Adı> -U <Kullanıcı Adı> -P <Şifre> -i <Dosyanın Path>

Hani lazım olursa diye diğer sqlcmd komutlarıda aşağıdaki gibidir.

sqlcmd 
   -a packet_size
   -A (dedicated administrator connection)
   -b (terminate batch job if there is an error)
   -c batch_terminator
   -C (trust the server certificate)
   -d db_name
   -e (echo input)
   -E (use trusted connection)
   -f codepage | i:codepage[,o:codepage] | o:codepage[,i:codepage]
   -h rows_per_header
   -H workstation_name
   -i input_file
   -I (enable quoted identifiers)
   -k[1 | 2] (remove or replace control characters)
   -K application_intent
   -l login_timeout
   -L[c] (list servers, optional clean output)
   -m error_level
   -M multisubnet_failover
   -N (encrypt connection)
   -o output_file
   -p[1] (print statistics, optional colon format)
   -P password
   -q "cmdline query"
   -Q "cmdline query" (and exit)
   -r[0 | 1] (msgs to stderr)
   -R (use client regional settings)
   -s col_separator
   -S [protocol:]server[\instance_name][,port]
   -t query_timeout
   -u (unicode output file)
   -U login_id
   -v var = "value"
   -V error_severity_level
   -w column_width
   -W (remove trailing spaces)
   -x (disable variable substitution)
   -X[1] (disable commands, startup script, environment variables and optional exit)
   -y variable_length_type_display_width
   -Y fixed_length_type_display_width
   -z new_password 
   -Z new_password (and exit)

   -? (usage)

3 Temmuz 2013 Çarşamba

Programlama da Notasyonlar

Programlama da Notasyonlar 

Notasyon Nedir?

Kodlama yaparken notasyonlar programların daha anlaşılır olmasını sağlayan ve kodun okunulabilirlini arttıran yazım şekilleridir. Aynı zamanda programlara genel bir standart da kazandırır.

Macar Notasyonu (Hungarian Notation)

Önce değişkeni türü arkasından değişkenin işlevine göre isimlenirilme yöntemidir.

Örnek olarak:
TextBox txtkullaniciadi
double drakam

Deve Notasyonu (Camel Notation)

Değişken isimlendirilirken ilk kelime küçük harfle başlar ve ardından gelen bütün kelimeler büyük harfle başlar. Javascript/jQuery de varsıyılan dil olduğu söyleniyor.
Perl programlama diliyle yaygınlaşan bu notasyon, Medya çalışmaları ve dilbilgidi ayrıca Oxford İngilizce sözlük uygulamalarında kullanılan notasyonun esas adı “Media Capitals” dır.

Örnek olarak:
TextBox txtKullaniciAdi
int telefonNumarasi

Paskal Notasyonu (Pascal Notation)

Genellikle C# dilinde varsayılan notasyon olan pascal notasyonunun kuralı değişken isimlendirilirken kullanılan bütün kelimelerin büyük harfle başlaması gerekmektedir.

Örnek olarak:
TextBox, DropDownList,
GetUserInformation()
int UserId
double UsersLikePercents


Altıçizili Notasyonu (Underscore Notation)

Bu notasyonda değişkenler tanımlanırken küçük harfle başlar ve birden çok kelimeden oluşuyorsa değişken ismi, kelimeler arasına “_” konur.

Örnek olarak:
int user_age
string content_title

Büyük Harf Notasyonu (Uppercase Notation)

İsminden de anladığımız gibi değişken tanımlarken bütün harfleri büyük harf yaparız.

String CONTENT
int USERAGE

Charles Simonyi




Uzaya giden 2. macar aynı zamanda Charles Simonyi Microsoft'un “Yazılım Grubu Başkanı” olarak Microsoft Office Uygulamalarının yaratılmasında önemli rol oynamış bir Macar-Amerikan Yazılımcıdır.


Yaşamı:
Simonyi Budapeşte, Macaristan'da, Budapeşte Teknik Üniversitesi'nde elektrik mühendisliği profesörü olan Simonyi Károly'in oğlu olarak doğdu. Lisedeyken gözlemci olarak bir bilgisayar laboratuarında Sovyet Ural II adlı anabilgisayarı üzerinde çalışmıştır. O sırda bilgisayarlara karşı bir ilgisi oluşmuş ve laboratuardaki mühendislerden programlamayı öğrenmiştir. Zamanla okulu bırakıp derleyiciler yazmayı öğrendi ve bunlardan birini bir devlet dairesine satmıştır. Yine kendi yaptığı bir derleyiciyi Danimarkalı ticari bir heyetin üyelerine de sunmuştur.
1966 yılında Denmark's A/S Regnecentralen adlı bir şirket tarafından işe alınmıştır.1968 de Amerika Birleşik Devletleri Kaliforniya Üniversitesi'ne gitmiş ve Matematik ve İstatistik Mühendisliği'ni bitirmiştir.
Sonra Lisansüstü çalışması için Stanford Üniversitesi'ne gitmiş ve Xerox PARC tarafından işe alınıp en verimli döneminde Alan Kay, Butler Lampson ve Robert Metcalfe gibi Xerox Alto'nun geliştiricileri ile birlikte çalışmıştır.Lampson ile birlikte ilk WYSIWYG belge hazırlama programını geliştirerek 1974 yılında faaliyete geçmiştir. 1977'de “Meta programming” ismini verdiği bir yazılım proje yönetimi tekniği ile ilgili bir tez ile Stanford'dan doktorasını aldı. 1981 yılına kadar PARC'da kaldı.


Microsoft:
Metcalfe'nin önerisi ile doğrudan Bill Gates ile Microsoft’ta çalışmaya başladı. Firmada en karlı ürünler olan Word ve Excel'in geliştirilmesinde önemli rol aldı. Özellikle de Excel Tablo Sistemleri'nde (Multiplan, Spreadsheet, Electronic Paper). Simonyi bu sistemleri “Gelir Bombası” olarak görüyordu. Bu strateji ile taşınabilir dosya sistemlerini oluşturmuş oldu. Bu sistemin MS-Dos sisteminde uygulanmasında sorunlar yaşansada sistemin geliştirilmesine devam edildi. Projenin geliştirilmesinde olumsuzluklar yaşatan bu durumdan rahatsız olan Simonyi, Xerox ta öğrendiği Nesne Tabanlı Programlama tekniklerini Microsoft'a tanıttı. Değişkenlerin isimlendirilmesini hedefleyen bir yöntem olan Macar Notasyonu'nu geliştirmiştir. Aslında bu sistem doktora tezinin standartlarıydı. Macar Notasyonu Microsoft'a oldukça yaygın şekilde kullanılmıştır.
Devamı için : http://tr.wikipedia.org/wiki/Charles_Simonyi


26 Haziran 2013 Çarşamba

LightSwitch

LightSwitch



Bu yazıda uzun kodlama süreçlerini kısaltan bir Microsoft ürünü olan LightSwitch'den söz edeceğiz.

Küçük veri giriş uygulamaları için çok kullanışlı olan bu yöntem, gerçekten kullanıcı-deneğimi yüksek, çekirdeği çok-katmanlı mimari üzerine oturtulmuş iş uygulamaları geliştirmemize imkan veriyor.




Lightswitch beta-1 'in genel anatomisi

Sunum Katmanı:
LightSwitch'de sunum katmanı olduğu gibi silverlight 4 üzerinde kuruludur. Bu nedenle kullanıcı arayüzleri oldukça zengindir. Sunum katmanı otomatik olarak istediğiniz amaç için oluşturulur. Ayrıca değişik temalarla sunum katmanını geliştirebilirsiniz.
Mantıksal Katman:
Bu katman iş mantığının yürütüldüğü katmandır. Validasyonların bir kısmnı, kullanıcıdan alınan verilerinin işlenerek veri tabanına işlenmesi işlemleri bu katmanda yer alır. Bileşenlerin arasında Silverlight uygulkamasını barındıran ASP.NET, veri modellerini içeren Entity Framework ve model ile veritabanı arasında veri alış verişini sağlayan WCF RIA servisleri bulunur.
Veri Katmanı:
Veri katmanı, veri tabanıyla iletişimin sağlandığı katmandır.

LightSwitch kullanılarak bir proje oluşturma
Visual Studio'yu açarak yeni proje diyoruz ya da File=>New Project ardından sol menuden LightSwitch'i seçerek yeni bir LightSwitch projesi açıyoruz.



Uygulamanın hangi dilde olacağına karar verdikten sonra projeyi oluşturduktan sonra karşımıza çıkan ekran bize sadece 2 seçenek sunuyor bu iki seçeneği ya yeni bir tablo oluşturacağız ya da Data Source'a bir external ekleyeceğiz.
DataSource dosyasının önemi:

Data Source dediğimiz dosya bizim veri katmanı diye anlattığımız katman olup burda veri tabanı bağlantımınızı yaparız.

  • DataSource'a sağ tıklayarak Add Data Source diyerek gelen ekrandan Database bağlantını yapabiliriz.
  • DataSource'a sağ tıkladığımızda Add table dersek de kendi tablolarımızı ekleyebiliriz.

Oluşturduğumuz bu projeye veritabanını ekledikten sonra Datasource'un içince Connection açılan DB'nin tablolarını görmüş oluyoruz. Bu tablolardan herhangi birine çift tıkladığımızda karşımıza gelen ekran aşağıdaki gibi olup bu ekran bize tablonun özelliklerini gösteriyor. Tablonun üst kısmındaki menüde:

-Relationship: tablolar arasında ilişki ekleyebilmek için
-ComputedProperty: yeni bir kolon ve özellik ekleyebilmek için
-Query : özel bir duruma uygun verileri alabilmeyi düzenlemek için.
-Screen :Sunum katmanını oluşturmak ve düzenlemek içindir.

Sceen:
Bu bölümde karşılaşacağımız ekran aşağıdaki gibidir . Bu ekranda

  • Tamplate seçmemizi sağlar.
  • Tablo seçmemizi sağlıyor
Screenleri düzenlemek için onlara çift tıklamamız yeterli. Burada TextBox otomatik olarak oluşturulmuş input türlerini aşağıdaki gibi değiştirebiliyoruz. Örnek olarak Password kolonunun özelliklerindeki Control type'ı Custom control olarak ayarladıktan sonra custom control bölümünden türü belirleyerek düzenleyebiliyoruz.


Oluşturulan bu basit admin panelleri Debug ederken silverlight kullanıldığı için küçük bir pencere olarak olduğunu görebiliyoruz ancak.publish ederken kullanacağımız alanı seçebiliyoruz aşağıdaki gibi:
LightSwitch'de yapılmış bir projenin destop görüntüsü: