Përdoruesi diskutim:Arsimnura

Page contents not supported in other languages.
Nga Wikipedia, enciklopedia e lirë
Kjo faqe këtu është vetëm për diskutim mbi përdoruesin Arsimnura. Wikipedia nxit diskutimin mes vullnetarëve të saj dhe nuk do të censurojë komente bazuar në pikëpamjet ideologjike ose politike. Wikipedia nuk do t’i ndryshojë komentet. Ato ose do të publikohen, ose do të fshihen nëse nuk u binden rregullave kryesore.
Fillo një temë të re diskutimi.
Ju lutemi nënshkruani me: – ~~~~

Të gjitha komentet u nënshtrohen këtyre rregullave:

  • Përmbajuni temës!
  • Nuk lejohen: sharje, fyerje, fjalor i papërshtatshëm, gjuhë që përmban urrejtje, sulme personale, thirrje për dhunë apo çdo qëndrim tjetër jo i rregullt.

Shkencat Kompjuterike[Redakto nëpërmjet kodit]

Arsim Nura: Fletë për Shkenca kompjuterike 

është studimi i themeleve teorike të informacionit dhe përpunimit të informatave, si dhe i teknikave praktike për zbatimin e tyre dhe aplikimin në sistemet kompjuterike. Shpesh përshkruhet edhe si studim sistematik i proceseve algoritmike që krijojnë, përshkruajnë dhe transformojnë informacionin. Sipas Peter J. Denning, pyetja themelore që e preokupon shkencën kompjuterike është, "Çfarë mund të automatizohet me efikasitet?" Shkenca kompjuterike ka shumë nën-fusha; disa, të tilla si grafika kompjuterike, theksojnë llogaritjet e rezultateve të veçanta, ndërsa të tjerat, të tilla si teoria e kompleksitetit kompjuterik, studiojnë veçoritë e problemeve kompjuterike. Fushat tjera, si teoria e gjuhës programuese studiojnë rrugët që shpjegojnë përpunimin e informatave, ndërsa programimi kompjuterik praktikon gjuhë programimi specifike për zgjidhjen e problemeve specifike të përpunimit të informacioneve, dhe interaksioni njeri-kompjuter fokusohet në sfidat që bëjnë kompjuterët dhe përpunimin e informacioneve të përdorshme dhe universalisht të arritshme për njerëzit.

Publiku i përgjithshëm ndonjëherë ngatërron shkencën kompjuterike me profesionet tjera që merren me kompjuterë (të tilla si informatika), apo mendon se ajo lidhet me përvojën e tyre me kompjuterë, e cila zakonisht përfshin veprimtari të tilla si luarja e lojërave, web-shfletimi, dhe shkruarja e teksteve. Megjithatë, fokusi i shkencës kompjuterike është më shumë në të kuptuarit e veçorive të programeve të përdorura për zbatimin e software-it të tillë si lojërat dhe web-shfletuesit, dhe në shfrytëzimin e atyre diturive për të krijuar programe të reja dhe përmirësimin e atyre ekzistuese.

Teknologjia  është një koncept i gjërë që merret me aplikimin e njohurive për veglat dhe profesionet, në funksion të kontrollimit dhe përshtatjes së rrethanave në ambientin jetësor në përputhje me nevojat e tij. Një definicion i saktë për termin "Teknologji", sidoqoftë, nuk ekziston; "teknologjia" mund t'i referohet objekteve materiale që përdoren nga njeriu, siç janë makinat, harduerët ose enët, por mund të përfshijë edhe tema më të gjëra, përfshirë sistemet, metodat e organizimit, dhe teknikat. Ky term mund të aplikohet në përgjithësi ose në kategori specifike si p.sh: "teknologjia e konstruktimit", "teknologjia mjekësore", ose "teknologjinë e përkryer" (state-of-the-art).

Aplikimi i teknologjisë nga njerëzimi filloi me shëndrrimin e resurseve natyrale në vegla të thjeshta. Zbulimi i aftësisë të kontrollimit të zjarritrriti burimet e ushqimit dhe zbulimi i rrotës ndihmoi njerëzit të udhëtonin dhe të kontrollonin ambientin e tyre. Zhvillimet e fundit të teknologjisë, përfshirë "shtypin", telefonin, dhe Internetin, kanë zvogëluar barrierat fizike të komunikimit dhe kanë lejuar njerëzit të komunikojnë në shkallë globale. Sidoqoftë, teknologjia nuk është përdorur vetëm për qëllime paqësore; zhvillimi i armëve me fuqi shkatërruese gjithmonë më të lartë ka ecur përgjatë historisë, nga armët më të thjeshta primitive në armët nukleare .

Teknologjia ka ndikuar shoqërinë në mënyra të ndryshme. Në shumë shoqëri, teknologjia ka ndihmuar në zhvillimin e ekonomisë (përfshirëekonominë globale të ditëve të sotme) dhe ka lejuar rritjen e klasës shoqërëre të lirë (në aspektin e kohës dhe punës). Shumë procese teknologjike lirojnë produkte të padëshirueshme, të njohura si ndotje, dhe zbrazin resurset natyrore, në dëm të Tokës dhe Natyrës. Implementimet e ndryshme të teknologjisë ndikojnë në vlerat e shoqërisë dhe një teknologji e re shpesh shtron pyetje të reja etike. Shembujt përfshijnë rritjen e nocionit "efikasitet" në terme të produktivitetit njerzor, një term që fillimisht ishte aplikuar vetëm për makinat, dhe sfidat e normave tradicionale.

Debate filozofike janë ngritur nga përdorimi i teknologjisë në shoqëri, me mosmarrëveshje në çështjen "a i ndihmon teknologjia gjendjes së njeriut apo e përkeqëson atë?". Neo-Ludizmi, anarko-primitivizmi, dhe lëvizje të ngjajshme kritikojnë përhapjen e teknologjisë në botën moderne, duke pretenduar se e dëmton ambientin dhe njerëzit; propozuesit e ideologjive si transhumanizmi dhe tekno-progresivizmi e shohin përparimin teknologjik si të dobishëm për njerëzimin dhe gjendjen e njerut. Në fakt, deri vonë është menduar se zhvillimi i teknologjisë ishte i mundër vetëm për qeniet njerëzore, por studimet e reja tregojnë se primatët e tjerë dhe disa delfinë kanë zhvilluar vegla të thjeshta dhe kanë mësuar t'ia bartin ato gjeneratave të tjera.


Inxhinieria softuerike, (ang.: Software Engineering.),  është një degë e shkencave kompjuterike që merret me prodhimin, mirëmbajtjen, testimin dhe përmirësimin e programeve të ndryshme informatike (Software Maintenance). Inxhinieria softuerike është term i shpikur në vitin 1968, në një konferencë shkencore ku shtroheshin pyetje "në lidhje me krizën softuerike" dhe u shpik si një përgjigje për gjendjen e palakmueshme të zhvillimit të programeve softuerike dhe cilësisë së tyre. Zhvilluesit softuerik në atë kohë nuk ishin në gjendje për të vendosur objektiva konkrete, kjo parashikohej nga burimet e nevojshme për të arritur këto objektiva, si dhe për të menaxhuar pritjet e konsumatorëve.

Definicioni për inxhinierinë softuerike. Inxhinieria softuerike është disciplinë e shkencave kompjuterike që ka të bëjë me zhvillimin e aplikacioneve me qasje të strukturuar. Inxhinieria softuerike mbulon jo vetëm aspektet teknike të sistemeve softuerike, por edhe modelimet vizuale, specifikimet formale, përkufizimet matematikore të sistemeve softuerike, çështjet e menaxhimit, sic janë udhëheqja e ekipeve programuese, planifikimi dhe buxhetimi, programimi, testimi, implementimi dhe mirëmbajtja për çështjet e zhvillimit të sistemeve softuerike. Tradicionalisht, inxhinieria softuerike është përqëndruar kryesisht në programim kompjuterik me ‘ad hoc’ analizën dhe projektim të teknikave. Këto ‘ad hoc’ metoda të inxhinierisë softuerike rezultuan në prodhimin e një sistemi softuerik që nuk u përputhën me kërkesat e shfrytëzuesit, zakonisht mbikalonin buxhetin dhe orarin, si dhe ishin jashtëzakonisht të vështirë për tu përmbajtur dhe përmirësuar. Përpara vitit 1975, shumica e organizatave softuerike përdornin teknika të thjeshta; secila punonte sipas mënyrës së vet. Depërtimet më të mëdhaja u bën përafërsisht gjatë viteve 1975 dhe 1985, me zhvillimin e të ashtuquajturës paradigm klasike dhe e strukturuar.

Përpjekja për të arritur deri në zgjidhjen e të ashtuquajturës “kriza softuerike”, qeveritë dhe organizatat private motivuan zhvillimin e të ashtuquajturës metoda “ujëvarë”. Këto metoda definuan kërkesat formale dhe fazat analitike, të cilat duhet të jenë të përfunduara para fillimit të fazes së dizajnimit formal, që duhet të përfundohen para se të filloj faza e implementimit formal, etj. Megjithëse metoda ujëvarë zakonisht është më superiorja tek metodat e rastit, sistemet softuerike të mëdhaja dhe të ndërlikuara ende prodhoheshin pas orarit dhe duke kaluar buxhetin, çka nuk përputheshin me kerkesat e shfrytëzuesit. Kjo ndodhte për disa arsye. Sëpari, metoda ujëvarë fokusohet më mirë në gjenerimin e produkteve të punës se sa në “inxhinjeri”. Thënë më thjeshtë, të shkruash dokumentacionet nuk është e njejtë se sa të bësh një inxhinjeri të mirë. Së dyti, metodat ujëvarë nuk mbështesin evolucionin e kërkesave të sistemit gjatë gjithë zhvillimit të ciklit jetësor. Gjithashtu specifikimet në gjuhën angleze të prodhuara me metodat ujëvarë nuk janë të përshtatshme për përshkrimin e ndodhive të ndërlikuara në sistemet softuerike.


Theksi në inxhinjerin softuerike është në të dy fjalët, softuer dhe inxhinjeri. Një inxhinjer është i aftë të ndërton një produkt me kualitet të lartë duke përdorur komponentet që shiten dhe duke i integruar ato në kohën dhe detyrimeve buxhetore. Inxhinjeri shpesh perballohet me proleme që janë keq të definuara, zgjedhje të pjesërishme, dhe duhet t’u referohet metodave empirike për të përcaktuar zgjidhjet. Problemi për ndërtimin dhe dërgimin e sistemeve softuerike në kohë ka qenë nën hulumtim dhe kërkim. Sistemet softuerike të dobishme janë të ndërlikuara. Për të qenë të dobishëm ato duhet të shtjellohen me kërkesat e shfrytëzuesit dhe mjedisin e synuar. Implikimet financiare të krizës softuerike janë të tmerrshme. Në një sondazh i bërë nga Cutter Consortium [2002], u raportua: - 75% e teknologjisë së informacionit kanë qenë të përfshirë në kontestet që përfunduan në gjyq. - Në 67% të këtyre rasteve, funksionimi ose ekzektumi i produkteve softuerike të dorëzuara nuk përputheshin me pretendimet e zhvilluesve softuerik.

Gjatë viteve 1950, shumica e programeve janë shkruar në gjuhën e kuvendit. Këto programe ishin të kufizuara me disa qindra rreshta të kodit të kuvendit, pra ishin në madhësi të vogël. Çdo programer zhvillonte programe në stilin e vet duke u bazuar në intuitën e tij. Ky lloj programimi u quante Programim Kërkimor. Zhvillimi i ardhshëm i rëndësishëm që ka ndodhur gjatë viteve 1960 në fushën e programimit ishte programimi me nivel të lartë gjuhësor. Përdorimi i nivelit të lartë gjuhësor në programim reduktoi arritjet e zhvillimit dhe kohën e konsiderueshme. Në atë kohë u paraqitën gjuhët si FORTRAN, ALGOL, dhe COBOL. Duke u zmadhuar madhësia dhe kompleksiteti i programeve, stili i programimit kërkimor filloi të jetë i pamjaftueshëm. Programeret e kishin të vështirë jo vetëm që të shkruajn dhe përmirësojn programet, por edhe të kuptojn dhe mbajn programe të shkruar nga programer të tjerë. Për tu përballuar me këtë problem, programuesit me përvojë këshilluan programuesit tjerë që t’i kushtojnë vëmendje të veçantë dizajnit të strukturës së programit. Në vitet e ’60, u konstatua se “GOTO” deklarata ishte fajtori kryesorë që e bën strukturen e kontrollit të një programi të komplikuar dhe të çrregullt. Në atë kohë shumica e programuesve shfrytëzuan gjuhën e kuvendit gjërësisht. Ata duke konsideruar deklaratat e “GOTO” në gjuhët e niveleve të larta ishin më të natyrshme sepse gjenin afërsi me deklaratat e JUMP që shpesh përdoren në gjuhët programuese të kuvendit.

Në këtë periudhë, Dijkstra [1968] publikoi artikullin e tij të famshëm “GOTO Statments Considered Harmful”. Me shpalljen e këtij artikulli shumë programues u zemëruan. Ata botuan disa artikuj duke kundërshtuar dhe duke theksuar avantazhet e deklaratave GOTO. Por, shumë shpejt u dëshmua se vetëm tre konstrukte programimi ishin të mjaftueshëm për të shprehur logjikën e ndonjë programi, ato janë: sekuenca, përzgjedhja dhe përsëritja. Kjo formoi bazën e metodologjisë së programimit të strukturuar. Pas programimit të strukturuar, zhvillimi tjetër i rëndësishëm ishte struktura e të dhënave-dizajni orientuar. Programuesit argumentuan se për të shkruar një program të mirë, është e rëndësishme ti kushtohet më shumë vëmendje dizajnit të strukturës të të dhënave të programit, sesa dizajnit të strukturës kontrolluese. Teknika e strukturës së të dhënave-dizajni orientuar ndihmon për të derivuar strukturën e programit prej strukturës së të dhënave të programit. Shembull është teknika e strukturës së të dhënave-dizajni orientuar Jackson’s Structured Programming (JSP), e krijuar nga Michael Jackson në vitin 1970. Zhvillim tjetër i rëndësishëm në vitet e ’70 ishte zhvillimi i teknikës së të dhënave rrjedhëse-dizajni orientuar. Programuesit me përvojë deklaruan se për të patur një struktur programi të mirë, duhet studijuar se si të dhënat rrjedhin nga hyrja deri në dalje të programit. Çdo program lexon të dhëna, i përpunon për të arritur një dalje. Kur rrjedhja e të dhënave është e identifikuar, atëherë prej atje mund të derivohet struktura e programit. Dizajni objekt-orientuar (1980) është teknika e fundit dhe më e aplikuara. Ajo ka një dizajn me qasje intuitive ku objektet natyrale (sic janë të punësuarit,pay-roll regjistri, etj) në një problem janë të parat që identifikohen. Lidhjet mes objekteve (sic janë kompozimi, referimi dhe trashëgimia) janë të determinuara. Çdo objekt në fakt vepron si njësi të dhënash të fshehura.