Nadhani unamanisha data abstraction, a programmer can use an object without knowing the internal details ie only needs to know what an object is and what it does. How object does a particular task is hidden from the programmer.
I see many people repeating this mantra with no evidence. Its not true.Pascal is a very good language for using to train basic programming concepts to beginners. It's easy and not fuzzy, they can later upgrade to other "modern day languages" at will.
program HelloWorld;
begin
writeln('Hello World');
end.
print("Hello World")
{$mode objfpc} // directive to be used for defining classes
{$m+} // directive to be used for using constructor
program exClass;
type
Rectangle = class
private
length, width: integer;
public
constructor create(l, w: integer);
procedure setlength(l: integer);
function getlength(): integer;
procedure setwidth(w: integer);
function getwidth(): integer;
procedure draw;
end;
var
r1: Rectangle;
constructor Rectangle.create(l, w: integer);
begin
length := l;
width := w;
end;
procedure Rectangle.setlength(l: integer);
begin
length := l;
end;
procedure Rectangle.setwidth(w: integer);
begin
width :=w;
end;
function Rectangle.getlength(): integer;
begin
getlength := length;
end;
function Rectangle.getwidth(): integer;
begin
getwidth := width;
end;
procedure Rectangle.draw;
var
i, j: integer;
begin
for i:= 1 to length do
begin
for j:= 1 to width do
write(' * ');
writeln;
end;
end;
begin
r1:= Rectangle.create(3, 7);
writeln(' Draw Rectangle: ', r1.getlength(), ' by ' , r1.getwidth());
r1.draw;
r1.setlength(4);
r1.setwidth(6);
writeln(' Draw Rectangle: ', r1.getlength(), ' by ' , r1.getwidth());
r1.draw;
end.
class Rectangle:
def __init__(self, l, w):
self.l = l
self.w = w
def set_len(self, l):
self.l = l
def set_width(self, w):
self.w = w
def draw(self):
print("Draw rectangle ", self.l, " by ", self.w)
for d in range(0, self.w):
print("*", end="")
for e in range(0, self.l):
print("--", end="")
print("")
rect = Rectangle(20, 10)
rect.draw()
I am one of those people who were so unlucky to be introduced into programming using C/C++. I wouldn't wish the same to anyone else, was crazy, just that I was passionate about learning programming which saw me enduring to the end.
I hope wanafunzi wa Chemical engineerig hawafundishwi alchemistNi kweli Pascal sio language ya kutumia katika karne hii lakini ninachokijua ni kwamba pale udsm hawaifundishi kwaajili ya wewe kwenda kuituma bali wanakupa general understanding of code evolutions.
i still keep reading ur signatureProgramming hakuna source nzuri zaidi ya internet. Kuna kila kitu unachotaka kujua kwenye internet.
Kama ndio unaanza kabisa from scratch ni vizuri kuanza na video tutorials ili uweze kuona na kumsikia mtu anaelekeza cha kufanya la si hivyo mwanzo unaweza kuuona mgumu sana kama utaanzia kwenye kusoma maandishi.
Kuna videos nyingi sana za programming Youtube, unachagua language unayotaka kuanza nayo, ntakushauri uchague kati ya Python au C, Python ni nyepesi iko juu juu, C ni challenging kidogo kuliko Python japo inakufundisha mambo mengi zaidi kwa sababu ina features nyingi ambazo zinakuruhusu kuaccess mambo ya chini kabisa kwenye computer ambayo Python imejaribu kuyaficha usiguse.
Kama utachagua Python unaweza anza na hizi videos hapa
https://www.youtube.com/watch?v=HBxCHonP6Ro&list=PL6gx4Cwl9DGAcbMi1sH6oAMk4JHw91mC_
Kama utapenda kuanza na C pia videos hizi hapa
https://www.youtube.com/watch?v=2NWeucMKrLI&list=PL6gx4Cwl9DGAKIXv8Yr6nhGJ9Vlcjyymq
Hiyo ni playlist, unaangalia video moja hadi nyingine.
Huyo jamaa anafundisha kuanzia basics kabisa ana-assume huna experience yoyote na programming. Ukimaliza playlist hiyo sasa kama hujui uende direction ipi unaweza rudi kuuliza, kuna sehemu nyingi tu za kwenda. At first inaweza ikawa boring ila itafika muda utaona utamu wake,unaweza ukaona tatizo lolote lile duniani linaweza likawa solved kwa programming.
I see many people repeating this mantra with no evidence. Its not true.
Here is comparison of Pascal and Python. Judge yourself if pascal is simple
1. Hello World
Pascal
Code:program HelloWorld; begin writeln('Hello World'); end.
Python
Code:print("Hello World")
Draw rectangle
Pascal
Code:{$mode objfpc} // directive to be used for defining classes {$m+} // directive to be used for using constructor program exClass; type Rectangle = class private length, width: integer; public constructor create(l, w: integer); procedure setlength(l: integer); function getlength(): integer; procedure setwidth(w: integer); function getwidth(): integer; procedure draw; end; var r1: Rectangle; constructor Rectangle.create(l, w: integer); begin length := l; width := w; end; procedure Rectangle.setlength(l: integer); begin length := l; end; procedure Rectangle.setwidth(w: integer); begin width :=w; end; function Rectangle.getlength(): integer; begin getlength := length; end; function Rectangle.getwidth(): integer; begin getwidth := width; end; procedure Rectangle.draw; var i, j: integer; begin for i:= 1 to length do begin for j:= 1 to width do write(' * '); writeln; end; end; begin r1:= Rectangle.create(3, 7); writeln(' Draw Rectangle: ', r1.getlength(), ' by ' , r1.getwidth()); r1.draw; r1.setlength(4); r1.setwidth(6); writeln(' Draw Rectangle: ', r1.getlength(), ' by ' , r1.getwidth()); r1.draw; end.
Python
Code:class Rectangle: def __init__(self, l, w): self.l = l self.w = w def set_len(self, l): self.l = l def set_width(self, w): self.w = w def draw(self): print("Draw rectangle ", self.l, " by ", self.w) for d in range(0, self.w): print("*", end="") for e in range(0, self.l): print("--", end="") print("") rect = Rectangle(20, 10) rect.draw()
Kwa comparison hii, naomba kujua urahisi wa Pascal maana nadhani wengine wana comment kwa kutokujua.
Pascal sio rahisi hata kidogo. Concept mnazosema zinamsaidia baadae kujifunza lugha nyingine ni zipi?
Mtu aliyesoma Pascal ni ngumu sana kwakwe ku adopt lugha nyingine.
Anayekataa naomba aje na ushahidi thabiti kama nilivyofanya!
Tatizo sio C++. Tatizo watu wengi wanaofundisha C++ hawaijui. C++ haifundishwi kwa kusoma kitabuni. Nimefundisha wanafunzi kadhaa C++ na hakuna hata mmoja aliyedhani ilikuwa ni mbaya waalimu karibu wote wanaofundisha C++ hawajawahi kuifanyia kazi.
Jeff Way aliwahi kusema "Learning should be easy. If it's not, then you have the wrong teacher". Hicho ndicho kilichokukumba.
So far my argument stands: Pascal is dead and teaching it is waste of Time and brain
Ukiangalia mwanafunzi mwaka wa (1) anaandika Hello World in Pascal (2) Hello World in C (3) Hello World in Java halafu unatarajia mwanafunzi huyu huyu aje na uvumbuzi. This is a JOKE!
Natamani sana kujifunza IT hasa programming ingawa sina basic yoyote. Wapi naweza kupata hyo elimu kwa muda nje ya muda wa kazi??
Mkuu kama ulivo sema "Si mtaalamu wa Programming",ndio maana unatetea ujinga wa UDSM,katika lugha ishirini zinazotumika sana sasa,Pascal haipo!kamwe huwazi kupata kazi popote 'ata hapa Tz' kama una Pascal tu kichwani,OP(Delphi) ndo ambaye anamuweka alive pascal,wale wazee zee wazamani ndo wanatumia kudevelop windows applications,hakuna kampuni kubwa yoyote so far inayotumia pascal kwenye development zake.UDSM kufundisha pascal,nikurudisha wanafunzi miaka ya 80 huko!Unataka kusema Mwaka mzima wanasoma Pascal tu bila kusomaLanguage nyingine?
Si mtaalamu wa Programming ila Usidharau kitu chochote I have plenty of Good softwares written in Pascal usije hapa kuwaaminisha watu ati Pascal haina maana ulimwengu wa leo.
And Mind You Chuo kama UDSM sidhani kama wao ni ndezi kiasi hicho nachojua Vyuo vya Tanzania wanafundisha Wataalamu wa Kimataifa
Nimesoma Chuo ila kuna vitu tumejjifunza sio Common nchini kwetu ila nchi za jirani vipo,siwezi kusimama kasema chuo changu wali Bugi kunifundisha kitu ambacho hakipo kwetu.
who knows my future? si ajabu kaenda kufundisha au kufanya kazi ambako hicho kitu ambacho nakidharau kipo au kinatumika
Example of app written in Pascal
kwa walotumia hizi apps watakwambia mambo yake na nawashauri wanafunzi wote wa UDSM wa hiyo course mtakaosoma thread hii hapa msipuuze mnachofundishwa na Walimu wenu au ma prof wenu kwa kusikiliza eti who Learns Pascal this world,so long as in Programming language jifunzeni tu mnafundishwa muwe watalaamu wa Ulimwengu mzima na hauwezi kuwa mtalaam kwa ku Ignore vitu ambavyo haujui labda ungekua wewe ndo expert kuzidi vile mleta mada anavyotaka walimu wenu wawafundishe
Anzia pale UCC (University of Dar es Salaam Computing) CenterNatamani sana kujifunza IT hasa programming ingawa sina basic yoyote. Wapi naweza kupata hyo elimu kwa muda nje ya muda wa kazi??
Prof kajifunza programming mwaka 1970 unatarajia kibongo bongo atajihangaisha na hiyo ruby??OMG!!!! UDSM still learn Pascal programming language!!!!
This is bull sheet n none sense..I thought university kubwa km UDSM wanasoma JAVA,C++,Python, Ruby,ASP.NET...
Aisee technology is rapidly changing, wanatakiwa kubadili mutaala wao maana wako nyuma na ulimwengu wa Programmers.
Wahenga ile ndoto ya kuifanya TZ kuwa km Silicon Valley sijui km itatimia!!!!
Post sent using JamiiForums mobile app
[emoji2] [emoji2] [emoji2] [emoji2] [emoji2] [emoji2]Prof kajifunza programming mwaka 1970 unatarajia kibongo bongo atajihangaisha na hiyo ruby??
Wengi badala ya kuwaza kujiendeleza wanakomaa na siasa!! Nenda pale tafuta prof aliyetengeneza ka software kamoja kama vlc uone kama utapata!!
He should do whats right, not whats easy!Ilikuwa lini hiyo?
Pascal imeshakufa. Ukiacha Delphi, sioni manufaa ya kumfundisha mwanafunzi Pascal.
Nakushauri wafundishe Python.
Mwanafunzi anayejua ku-solve swali kwa dy/dx unamtafutia language useless kwa kigezo cha urahisi? By the way Python is far easier than old Pascal!
Mfundishe kitu kitakachomsaidia na sio rahisi. Kwa logic hiyo tuondoe Fourier series and the like tuwe simultaneous equation kwa kuwa ni rahisi you know 🙂
Nakushauri uwafundishe wanafunzi wako kitu useful na sio simple. Watakushukuru kwa hilo!
Mwalimu, is this really a sound reason? Mwanafunzi ambaye hawezi hili, bora afanye kozi nyingine. Sayansi hataiweza kabisa. Labda akafanye Sayansikimu tu!
Kama ni hivyo si ungefundisha PHP basi? au hata C?
All in all, unaonekana kuwa outdated sana na hivyo kuzalisha Vijana wenye "kutu". Nakushauri ujitahidi ku update ufahamu wako. Nakushauri uwafundishe wanafunzi wako Python kwa kuanzia then kati ya C++, Java, C# au zingine kama hizo!
Difficulty does not imply rightness. Vice versa is true.He should do whats right, not whats easy!
wewe ulitumia windows 3 weweMimi kizazi cha WhatsApp? Umetumia Windows 95 wewe? Umetumia Pre Pentium processors wewe?
By the way kudharau watu ni argument ya kijinga kabisa!