Aug
26
2009
Bu gün bir neçə dildə sadə “Salam Dunya” proqarmın yazaq. Və görək ki, bu dillər necədə bir birlərinə oxşayır.
- C dili
1
2
3
4
5
6
| #include <stdio.h<
int main ()
{
printf("Salam Dunya! \n");
return 0;
} |
- C++
1
2
3
4
5
6
| #include <iostream<
using namespace std;
int main()
{
cout<<"Salam Dunya!" <<endl;
} |
- C#
1
2
3
4
5
6
7
8
| using system;
public class SalamDunya
{
public static void main()
{
Console.WriteLine("Salam Dunya! \n");
}
} |
- Java
1
2
3
4
5
6
| class salamdunya
{
public static void main() {
System.out.println("Salam Dunya! \n");
}
} |
Burdan görüldüyü kimi Java və C# çox oxşayır. Hər iki dildə hər bir şey class içindədir. Yəni sadə proqramda classlardan ibarətdir.
- Python
1
2
| #!usr/bin/python
print "Salam Dünya \n" |
- Ruby
- Perl
1
2
| #!usr/bin/perl
print "Salam Dünya \n"; |
Yuxarıdakı dillərin hamısı case senstividir. Yəni kodu yazanda kodda balaca hərfin yerinə böyük, böyük hərfin yerinə balaca hərf yazmaq olmaz. Məsələn C# da Console.Writeline(”Salam Dunya! \n”); yazsaq kompilyasiya səhvi verəcək. Çünki l böyük olmalıdır, mən balaca yazmışam. Yəni Console.WriteLine(”Salam Dunya! \n”);
- Pascal
1
2
3
4
5
| Program SalamDunay;
begin
Writeln("Salam Dunya");
readln;
end. |
Pascalda isə fərqi yoxdur. Böyük hərfin yerinə balaca balacanın yerinə böyük yaza bilərsən.
- PHP
- Bash
1
2
| #!/bin/bash
echo "Salam Dunya " |
- DOS
- Basic
Və s.
C#, C/C++, Java, PHP, Proqramlaşdırma, Python, Ruby | Ali |
Şərhlər (0)
bash, C#, Java, Python, Ruby
Aug
26
2009
Bu gün istəyirəm aşağıdakılar haqqında danışım:
1.Python script kimi
2.for operatoru
3.while operatoru
Keçən dəfə biz python haqqında danışanda interaktif rejimdən istifadə etdik.Dediyim kimi bəzi işlər üçün interaktif rejim əlverişli olsa da, biz proqram yazanda o bizə sərf etmir. Yəni proqramı heç hara saxlamadığımızdan onu heç bir yerdə də istifadə edə bilmirik.İndi görək pythonda scripti necə yazırıq.Mən linuxda scripting yazısında shebang haqqında bir balaca yazmışdım.İndi gəlin pythonda balaca bir scrip yazaq.Bunun üçün terminalda
[ali@localhost py]$ nano if.py
yazın.Yəni nano redaktorunda if.py adlı yazı yazmaq istəyirəm.İndi sadəcə yazmaq istədiyiniz scripti yazmağa başlayın
#!/usr/bin/python
#Author:Ismayilov Ali
#Date:13/06/2008
x= int(raw_input(”Zehmet olmasa bir reqem girin:”))
if x>> a=[1,2,3,4,5]
>>> for i in a:
… print i
…
1
2
3
4
5
>>>
Deyirəm bu python başdan ayağa gözəllikdir. a=[1,2,3,4,5] massivdir.Əgər biz massivə sətir elementləri yazsaq onda o elementlər dırnaq içərisində yazılmalıdır. Məsələn a=["Ali","Python","dersi"]
>>> a=["Ali","Python","Dersi"]
>>> for i in a:
… print i
…
Ali
Python
Dersi
burda for i in a yazanda özü başa düşür ki, i tam ədəddir və bu ədəd anın həmin yerdə duran informasiyaya (rəqəmi, sətri) müraciət etməlidir. print i isə həmin informasiyanı ekrana çıxarır.
3. While operatoru:
>>> i=0
>>> while i<4:
… print "Salam"
… i=i+1
…
Salam
Salam
Salam
Salam
Bizim bu while operatoru necə işləyir. Əgər şərt doğrudursa,onda dövrün içindəkilər yerinə yetirilir. Əks halda dövrdən çıxır. Ümumi forması While şərt: dövrün içi . Burda da for dövründə olduğu kimi : sonra aşağı düşmək və tab və ya space basmaq lazımdır. Yoxsa : qoymadıqda File "”, line 1
while i>> while i<4:
… print "Salam"
File "”, line 2
print “Salam”
^
IndentationError: expected an indented block
səhvi ilə qarşılaşacaqsız. Ümid edirəm ki, maraqlı və faydalı oldu.
Aug
26
2009
u gün biraz python haqqında yazacam.
Əgər siz pythonu yükləməmisizsə bu linkdən yükləyə bilərsiz. Çoxlu Linux distributivində python yüklənmiş olur. Əgər sizdə yoxdursa,onda pythonun rəsmi saytından yükləyə bilərsiz.
Python opensource (açıq kodlu) layihə olub,öyrənilməsi çox rahat və hər yerdə işlənə bilən dinamik proqramlaşdırma dilidir.
Pythonla siz iki rejimdə işləyə bilərsiz. Biri interaktif,biridəki adi text editorla proqramı yazırsız sonra kompilyasiya edirsiz. İnteraktif rejim bəzi məsələr üçün əlverişli olsa da,biraz çətin məsələni həll interaktiv rejimdə həll etmək məsləhət deyil. Təsadüfi deyil ki, yazının adını pytonla kef elə qoymuşam. Çünki python sadə və sonradan koda baxdıqda anlaşıqlı bir dildir. Mən pythonun interaktiv rejimindən kalkulyator kimi istifadə edirəm. Gəlin pythonun interaktiv rejiminə bir yerdə baxaq. Girirsiz terminala orda sadəcə python sözünü yazıb,enter düyməsini basırsız. Budur artıq pythonun interaktif rejiminə keçdiz. İnteraktiv rejim aşağıdakı kimi olur.
[student@localhost ~]$ python
Python 2.5 (r25:51908, Apr 10 2007, 10:29:13)
[GCC 4.1.2 20070403 (Red Hat 4.1.2-8)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
>>>
Gəlin indi riyazi hesablamalar aparaq.
[>>> 5+9
14
>>> 12*3
36
Gördüyünüz kimi sadəcə əməliyyatı yazırsan,enter basırsan və cavab hazır olur. Elə bil dəftərə misal yazırsan. İndi biraz mürəkkəb bir misal yazaq.
>>> ((100+3435)*3-(343+3475)*2)/5
593
Əsasən hər bir proqramlaşdırma dilin öyrənməyə başlayanda “Hello World” proqramı ilə başlayırlar. Bu dəfə biz qaydanı pozaraq, sadə riyazi hesablamalarla başladıq. Pythonda Hello World sadə şəkildə aşağıdakı kimi olur.
>>> print “Hello World”
Hello World
Adicə print “Hello World”. Yaxşı yadıma düşdü. Pythonda dəyişənlərin tipi avtomatik sistem tərəfindən bilinir. Yəni siz ” dırnaq içində nəsə yazsaz. Onda bu string (sətir) tipi kimi başa düşüləcək”. Əgər hər hansı rəqəm (onluq hissəsi olmayan) yazsaz, onda integer (tam) tip kimi başa düşülür. Bu da pythonun üstünlüklərindən biridir.İndi isə şərt operatoruna baxaq. Bütün proqramlaşdırma dillərində şərt operatoru ifdir. Pythonda if operatoru bu şəkildədir.
if şərt:
(tab və ya spacebar knopkasın basın) yerinə yetirilən əmrlər. Yəni:
>>> a=1
>>> if a==1:
… print “a birə bərabərdir”
…
a birə bərabərdir
Burda gördüyünüz kimi bərabərdir şərtini yoxlamaq üçün (==) istifadə etmək lazımdır. Əgər bir = qoysaz.
>>> if a=1:
File “”, line 1
if a=1:
^
SyntaxError: invalid syntax
şəklində syntaksis erroru çıxacaq. Şərti yazdıqdan sonra enteri basdıqda … nöqtələri gəlir. Bundan sonra mütləq ya boşluq ya da tab qoymaq lazımdır. Yoxsa,
>>> if a==1:
… print “a birə bərabərdir”
File “”, line 2
print “a birə bərabərdir”
^
IndentationError: expected an indented block
başınız errorla ağrıyacaq.
Bunu onun üçün elə qoyublar ki, proqram oxunaqlı olsun. Əmrləri (yəni if blokunun içini) yazdıqdan sonra nəticəni görmək üçün iki dəfə enter düyməsini basın.İndi isə şərt çox olan hala , yəni if-else quruluşuna baxaq.
>>> a=1
>>> if a==1:
… print “a birdir”
… else:
… print “a birden ferqlidir”
…
a birdir
Yəni ifin daxilin yazdıqdan sonra enteri basırsan. Keçirsən yeni sətrə,day bu dəfə boşluq buraxmırsan else: yazırsan. Qalanı bayaqki qayda kimi gedir. Bu qayda ilə if-elif-else işləyir. Yəni:
>>> a=2
>>> b=5
>>> sum=a+b
>>> cix=a-b
>>> if cix>0:
… print “a>b”
… elif cix<0:
… print "a<b"
… else:
… print "a=b"
…
a<b
Şəklində olur. Bugünlük bu qədər əgər nəsə sualınız olsa, verə bilərsiz.
Aug
26
2009
Proqramlaşdırmaya yeni başlayanda elə bilirdim ki, təkcə Basic və Pascal proqramlaşdırma dilləri var. Başqa dil yoxdur. Basiclə məktəbdə oxuyanda tanış olmuşdum. O vaxt düzü nəsə xoşum gəlməmişdi. Birinci kursda oxuyanda isə Pascal öyrənməyə başladım. Sonra eşitdim ki, pascal dili üzərində Delphi adlı mühit qurulub. Delphini öyrənməyə başladım. Hər gün keçdikcə bir yeni proqramlaşdırma dilinin adını eşidirdim. Bu məni yorurdu. Axı mən hansı dili bilməliyəm? Belə suallarla çox adam müraciət edirdim.
Mənə verilən cavablar müxtəlif olurdu. Riyaziyyatçılar deyirdi ki, proqramlaşdırma dilini bilmək boş şeydir. Əsas riyaziyyatdır.
Bəziləri deyirdi ki, əsas alqoritmin tapmaq lazımdır dili hamı öyrənə bilər.
Bəziləri deyirdi “flan” dili öyrən daha çox pul verirlər. O biri deyirdi sən nə danışırsan ” flan” dili həmişə yaşayacaq.
Beləliklə hərə bir cavab verirdi. Indi isə özüm istiyirəm bir cavab yazım. Deməli hansı dili öyrənmək lazımdır?
Wikipediaya baxsaz List of programming görərsiz ki, proqramlaşdırma dillərinin sayı həddindən artıq çoxdur. Kimsə müəyyən dili bəyənmiyib, özünə rahat bir dil yaradıb.
Əslində hansı dili öyrənmək sualından çox, hansı məqsəd üçün öyrənmək sualı haqqında fikirləşmək lazımdır.
Proqramlaşdırmanı şərti olaraq iki yerə bölək.
-
Desktop proqramlaşdırma
-
Web proqramlaşdırma
Desktop proqramlaşdırma deyəndə sistem üçün yazılan proqramlar, drayverlər, müxtəlif biznes proqramlar, riyazi proqramlar və s bura daxil ola bilər. Amma mən əməliyyat sistemlərinə görə desktop proqramlaşdırmanı da üç yerə ayırmaq istərdim.
-
Linuxda proqramlaşdırma
-
Windowsda proqramlaşdırma
- Appleda proqramlaşdırma
Qeyd: Indi dillərin çoxu cross platformdur, yəni bütün əməliyyatlar sistemlərində işləyirlər.
Əgər linux mühitində işləyirsizsə və əgər linuxun nüvəsi (kernel) ilə məşğul olmaq istəyirsizsə, onda mütləq C dilin bilməlisiz. Linuxun nüvəsində həmçinin biraz assemblerdən istifadə olunub, assembleri də bilsəz onda lap əla olar. Əgər nüvə ilə işiniz yoxdursa, təkcə linuxda balaca scriptlər yazmaq istəyirsinizsə, onda bash script dili sizin işinizə yarıyacaq. Amma indi artıq scriptləri pythonda yazmağa üstünlük verirlər. Odur ki, python burda sizin əla köməkçiniz olacaq.
Əgər linuxda proqram yazmaq istəyirsinizsə, onda C++, Java, Python, Ruby + Qt bunlardan birin və ya bir neçəsin bilmək lazım olacaq.
Windowsa gəldikdə isə əgər windows applicationlar yazmaq istəyirsinizsə, onda Visual Studio sizə kifayət edəcək. Visual Studioda müxtəlif dillərdən istifadə etməyə imkan var, amma C# dili ən məsləhətlisidir.Yox, əgər visual studio və C# dan xoşunuz gəlmirsə, onda Java windows applicationlar yazmaq üçün əla seçimdir.
Apple isə əsasən Cocoa frameworkundən istifadə olunur və dil kimi Objective-C istifadə olunur.
Web proqramlaşdırmaya gəldikdə isə, Adil öz bloqunda bu haqda PHP-dən əvvəl… biraz məlumat verib.Bundan başqa siz asp.neti bilməklə də əla veb səhifələr yarada bilərsiz. Amma əgər evdə oturub, veb səhifə yığırsızsa, onda php ən məsləhətlisidir. Perl də bu yaxınlara kimi çox istifadə olunurdu, amma deyəsən yavaş-yavaş istifadəsi azalır və php onun yerini tutur. Bəzən isə sizə veb səhifənizə java appletlər qoymaq üçün Java da lazım ola bilər. Javascripti isə veb proqramistin sağ əlidir.
Yekun olaraq hansı dili bilmək lazımdır sualına birdə baxaq.
- C. Bir çox dillər (Java, C++, C# və s) öz sintaksisin bu dil əsasında qurublar. Bu dili bilməklə digər dillərə keçmək asan olacaq.
- PHP dili web səhifələr yaratmaqda sizə yaxından köməklik edəcək.
- C# dili windows applicationlar yazmaq üçün əla seçimdir.
- Java dili hesab edirəm sizə çox lazım ola bilər. Bütün platformaları dəstəkləyir. C#-a çox oxşuyur.
- Javascript adından da göründüyü kimi script dilidir. PHP server hissədə işlədiyi halda, javascript client hissədə işləyir. Vebdə sizə çox lazım olacaq.
- Python dilinə tələbat hər gün keçdikcə biraz artır. Google bu dildən çox istifadə edir. Məsləhətlidir
- C++ əgər sistemlə oynamaq istəyirsinizsə, onda C++ bilmək yaxşı olardı. Yuxarıdakı dillərin hamısından çətindir.
- Ruby Yuxarıdakı dillərin hamısından az işlənsədə, hər gün keçdikcə Ruby məşhurlaşır. Vaxt olduqca, qurdalamaq olar.
Deyəcəkisiniz ki, pascal qaldı axı? Pascal dili təzə başlıyanlar üçün yaxşıdır, amma sonra heç kimə lazım olmur. Pascal dili olimpiyada da lazım ola bilər. Bir də asan olduğu üçün onu universitetlərdə keçirlər. Mən isə pascala vaxt itirməyi məsləhət görməzdim.
Bir şey də qeyd edim. Dil bilmək hələ başlanğıcdır. Riyazi dillə desək proqramist olmaq üçün proqramlaşdırma dilini bilmək zəruridir, amma kafi deyil.