Support

 

Macbook Air Alum MC966GR + GPS Pavilion DV6-6b07ev AS5750-2334G50Mnkk Macbook Air Alum MC969GR + GPS MacBook Pro MD322GR + GPS Satellite L750-1LC Satellite L750-16K Aspire S3 951-2464G34iss MacBook Pro MD322GR + GPS Macbook Air Alum MC969GR + GPS Vaio VPCEJ2M1E/B

Updates
Lajme dhe më të reja




Dokumentacionit
Dokumentet & Tutorials
FAQ / Knowledge Base




Mbështetje dhe trajnimi
Trajnimi




Komunitetit
Online Forum
Newsgroups

tiparet themelore dhe konceptet

Lista e object-oriented terma programimit.

Një studim nga Deborah J. Armstrong e gati 40 vjet të letërsisë informatikes identifikuar një numër të "kuarke", apo konceptet themelore, gjendet në shumicën e fortë e përkufizimeve të OOP.

Jo të gjitha këto koncepte gjenden në të gjitha object-oriented gjuhë programimi. Për shembull, programimit object-oriented që përdor klasa është nganjëherë i quajtur klasa bazuar programimit ,ndërsa programimi prototip bazë nuk zakonisht përdorin klasat. Si rezultat, një terminologji shumë të ndryshëm por të ngjashëm është përdorur për të përcaktuar konceptet e objektit dhe të shkallës së .

Benjamin C. Pierce dhe disa studiues të tjerë e shohin si përpjekje e kotë çdo të nxjerrim OOP të një sërë karakteristikash minimale. Ai megjithatë identifikon karakteristikat themelore të cilat mbështesin stilin e programimit OOP në shumicën object-oriented gjuhë:

  • Dinamik dërgojë - kur një metodë thirret në një objekt, objekt vetë përcakton se çfarë kodin merr ekzekutuar duke shikuar deri në kohën e metoda të kandidojë në një tavolinë të lidhur me objektin. Ky tipar dallon një objekt nga një lloj të dhënave abstrakte (ose moduli), e cila ka një zbatim të caktuar (statike) i operacioneve për të gjitha rastet. Kjo është një metodologji që i jep zhvillimit të programimit komponent modulare, ndërsa në të njëjtën kohë që shumë efikase.
  • Encapsulation (ose multi-metoda , rast në të cilin shteti është i ndarë)
  • Polymorphism subtype
  • Objekti trashëgimi (ose delegacionit )
  • Recursion hapur - një ndryshore të veçantë (syntactically ajo mund të jetë një fjalen), zakonisht e quajtur këtë , ose vetë , që lejon një metodë për të thirrur trup një organ tjetër metodë të njëjtin objekt. Kjo është e ndryshueshme në fund të detyruar , por lejon një metodë të përcaktuar në një klasë të kërkoj një tjetër metodë që është përcaktuar më vonë, në disa subclass e tij.

Në mënyrë të ngjashme, në vitin 2003 librin e tij, Konceptet në gjuhët e programimit , John C. Mitchell identifikon katër karakteristika kryesore: dërgimin dinamike, abstraksion ., polymorphism subtype, dhe trashëgimia Michael Lee Scott në Pragmatics gjuhë programimi e konsideron vetëm encapsulation, trashëgimia dhe dërgimin e dinamik .

Koncepte të tjera të përdorura në programimin object-oriented përfshijnë:

  • Klasat e objekteve
  • Raste të klasave
  • Metodat të cilat veprojnë në objektet e bashkangjitur.
  • Kalon Mesazh
  • Abstragim
  • Turbo-X Maestro HR 95-332
    17'' dhe 1GB memore
    Turbo-X Maestro HR 95-332
    569,00 €
    20111216-HP-laptops

Decoupling

Decoupling i referohet kontrolleve të kujdesshëm që module të veçanta kodin nga raste të përdorimit të veçanta, e cila rrit kodin e ri-përdorshmërisë. Një përdorim të përbashkët të decoupling në OOP është që të polymorphically decouple encapsulation (shih modelin Ura dhe model Adapter ) - për shembull, duke përdorur një ndërfaqe metodë që një objekt i encapsulated duhet të plotësojnë, në krahasim me përdorimin e klasës objektit.

Semantikë formale

Shih gjithashtu: semantikën formale e gjuhëve të programimit

Ka pasur disa përpjekje në formalizimin e koncepteve të përdorura në programimin object-oriented. Konceptet e mëposhtme dhe ndërton kanë qenë përdorur si interpretimet e koncepteve OOP:


 

Për të ndihmuar ose shërbyer më mirë ju lutem përshkruani si shumë detaje si të jetë e mundur.
Nëse ju jeni duke e përshkruar një gabim, ju lutem përfshijnë mesazh gabimi i plotë.
Nëse ju jeni duke përshkruar një bug, është repeatable dhe cilat janë hapat për të replikuar atë?


Histori:Studio CodeCharge është një zhvillim të shpejtë e aplikimit (RAD) dhe mjedisin e integruar të zhvillimit (IDE) për krijimin e bazës së të dhënave të shtyrë nga web aplikimit . Kjo është një gjenerator kodi dhe motor templating që ndan shtresa e prezantimit nga shtresa kodim, me qëllim të lejuar designers dhe programuesit për të punuar cohesively në një aplikim të internetit ( Model-View-Kontrolluesi model dizajn).

CodeCharge është produkt i parë i lëshuar nga Software Po, pas dy viteve të zhvillimit.

Software

CodeCharge përdor pikë-dhe-klikoni magjistarët për krijimin e rekord dhe kërko format, rrjetet, rrjetet editable dhe pa nevojë për programimin. Bazat e të dhënave janë mbështetur MySQL, MS SQL Server, MS Access, PostgreSQL, Oracle, dhe të gjithë të tjerët që mbështesin web lidhjes. CodeCharge mund të eksportit në të gjitha gjuhët kryesore programing, të tilla si ASP.NET , ASP , Java , ColdFusion , PHP , dhe Perl .

CodeCharge është bazuar në një interaktive user interface (UI) për të krijuar aplikacionet web. Kur gjenerimin e kodit, CodeCharge automatikisht strukturat e saj, duke përdorur emërtimin konventat dhe komente për të bërë me qëllim të kodit të qartë. Për më tepër, CodeCharge mban aplikimit dhe kodin e gjeneruar në mënyrë të veçantë projekteve të mund të konvertohet në çdo gjuhë në çdo kohë.

Një projekt CodeCharge gjeneruar - pa programimit shtesë - nuk është një sited shpartalluar web (ku çdo gjë thyen dmth nëpërmjet index.asp), por çdo faqe të arritshme nga ne emrin e vet.

Technologies

Këtu janë të teknologjive të listuara të cilat përdoren, kur aplikimi është i gatshëm dhe running.

  • OOP - Kërkesa gjeneruar Orientuar Objekt . Çdo element strukturor, si lidhje të bazës së të dhënave, rrjetit, navigation bar, faqja e dukshme vete etj, janë të gjitha objektet.

Kërkesa përdor. Microsoft NET Framework 2 dhe do të instalojë kur. NET 3,5 Kornizë është zbuluar në kompjuter host.

  • Templating - Codecharge përdorin faqet html template për të gjeneruar vende të dukshme në internet. Templates e faqeve web mund të jetë e parashikuar përpara se të bëjnë atë "live". Ka xxxx.html fotografi, në përputhje me rrethanat xxxx.asp (xxxx.php etj) fotografi kodin dhe për ngjarjet server side një xxxx_event.asp të veçantë (xxxx.php etj) fotografi.
  • Përshtatje - CodeCharge ofron përdoruesit e tij një mënyrë standarte për të ngritur kodin porosi për trajtimin e ngjarjeve nuk adresohen plotësisht nga ndërtuar në karakteristika.

Zbatimi gjenerimin e teknologjive të

  • PHP
  • Perl
  • . NET
  • Java
  • ASP
  • ColdFusion

pritjes

Në vitin 2003, në lidhje me versionin origjinal të Studio CodeCharge, Arbi Arzoumani e Arkitekt PHP shkruajtur:

"Për tag çmimin e tij ky brez kodin e aplikimit është edhe vlerë. Një kërkesë e madhe që unë mund të shoh këtë duke u përdorur për të është krijuar prototipet e aplikacioneve web në periudha shumë të shkurtër kohe. Me fjalë të tjera, propozimet minutën e fundit."

Kevin shkul e SitePoint Times Teknike ishte i impresionuar "nga mënyra në të cilat zhvilluesve përvojë mund të tërheqë shtuar pushtetin nga software, në vend që të kufizohet nga ajo, siç është rasti me shumicën RAD mjete për zhvillimin e Web."

Në shqyrtimin e tij CodeCharge Studio 2.0 , Troy Dreier shkroi në Intranet Journal , "CodeCharge Studio [lejon] zhvilluesit e aplikimit Web [për të] rrojë fjalë muaj jashtë kohës së tyre të zhvillimit."

CodeCharge Studio 3,0 marrë një vlerësim prej 3,5 nga 5 yje nga Peter B. Macintyre e PHP | arkitektit .

Programimin object-oriented


Programimit object-oriented
( OOP ) është një paradigmë të programimit duke përdorur " objekte ", - strukturat e të dhënave që përbëhet nga të dhënat e fushave dhe metodat e së bashku me ndërveprimet e tyre - për të hartuar aplikacioneve dhe programeve kompjuterike.Teknikat e programimit mund të përfshijnë tipare të tilla si të dhënat e abstraksionit , encapsulation , mesazheve , modularity , polymorphism, dhe trashëgimi . Shumë moderne gjuhë programimi tani mbështetjen e OOP, të paktën si një opsion.

Thjeshtë, jo OOP programs mund të jetë një "të gjatë" listën e deklaratave (ose commands). Programeve më komplekse, shpesh grup seksione më të vogla të këtyre pasqyrave në funksione apo subroutines secila prej të cilave mund të kryejë një detyrë të veçantë. Me dizajne të këtij lloji, është e zakonshme për disa të dhënave të programit të 'global', dmth të arritshme nga çdo pjesë e programit. Si programe të rriten në madhësi, duke lejuar çdo funksion të ndryshojë çdo pjesë të të dhënave do të thotë se mete mund të ketë një shtrirje të gjerë efekte.

Në të kundërt, object-oriented qasje inkurajon ose eshte programues në vendin e të dhënave, ku ajo nuk është drejtpërdrejt i kapshëm nga pjesa tjetër e programit. Në vend të kësaj, të dhënat është në disponim duke thirrur funksione të shkruar posaçërisht, i quajtur zakonisht metoda , të cilat janë të bundled ose në me të dhënat apo të trashëguara nga "objektet e klasës." Këto të veprojë si ndërmjetës për retrieving ose ndryshimin e të dhënave që ata të kontrollit. Ndërtimin e programimit që kombinon të dhënat me një grup të metodave për të hyrë dhe menaxhimin e këtyre të dhënave është quajtur një objekt. Praktika e përdorimit të subroutines për të shqyrtuar apo modifikojë llojeve të caktuara të të dhënave, megjithatë, ishte edhe mjaft i zakonshëm që përdoret në jo-OOP programimit modulare , edhe para se të përdorim ne gjerësin e programimit object-oriented.

Një object-oriented program do të zakonisht përmbajnë lloje të ndryshme të objekteve, çdo lloj i korrespondon një lloj të veçantë të të dhënave komplekse që do të menaxhohet ose ndoshta për një objekt të vërtetë të botës apo koncept të tilla si një llogari bankare , një lojtar hokej , ose një buldozer . Një program mund të përmbajë kopje të shumta të çdo lloji të objektit, një për secilin nga objektet e botës reale programi është që kanë të bëjnë me të. Për shembull, mund të ketë një llogari bankare objekt për çdo llogari të vërtetë të botës në një bankë të veçantë. Çdo kopje e objektit llogari bankare do të jenë njësoj në metodat që ajo ofron për manipulimin apo leximin e të dhënave të saj, por të dhënat brenda çdo objekt do të ndryshojnë duke pasqyruar historinë e ndryshme të secilës llogari.

Objektet mund të mendohet si i dhënë të dhënat e tyre brenda një sërë funksionesh projektuar për të siguruar që të dhënat janë përdorur siç duhet, dhe për të ndihmuar në këtë përdorim. Metodat e objektit do të zakonisht përfshijnë kontrolle dhe masa mbrojtëse që janë specifike për lloje të të dhënave objekti i përmban. Një objekt mund të ofrojnë të thjeshtë për ta përdorur, metoda të standardizuara për kryerjen e operacioneve të veçantë në të dhënat e saj, ndërsa fshehjen specifikat se si këto detyra janë kryer. Në këtë mënyrë ndryshimet mund të bëhen në strukturën e brendshme ose metodat e një objekti pa kërkuar se pjesa tjetër e programit të ndryshohet. Kjo qasje mund të përdoret gjithashtu për të ofruar metodave të standardizuara të gjithë llojet e ndryshme të objekteve. Si shembull, disa lloje të ndryshme të objekteve mund të ofrojnë metoda të shtypura. Çdo lloj i objektit të zbatuar këtë metodë mund të shtypura në një mënyrë të ndryshme, duke reflektuar lloje të ndryshme të të dhënave secila përmban, por të gjitha metodat e ndryshme të shtypura mund të quhet në të njëjtën mënyrë të standardizuar nga vende të tjera në program. Këto karakteristika të bëhet veçanërisht e dobishme kur më shumë se një programues kodi është duke kontribuar për një projekt ose kur qëllimi është për të reuse kodin mes projekteve.

Programimit object-oriented i ka rrënjët që mund të gjurmohen të 1960. Si hardware dhe software u bë gjithnjë e më komplekse, shpesh përshtatshmëri u bë një shqetësim. Hulumtuesit studiuar mënyra për të ruajtur cilësinë software dhe zhvilluar programimit object-oriented pjesërisht për të adresuar problemet e përbashkëta duke theksuar me forcë diskrete, njësitë reusable e logjikës programimit [ citim i duhur ] .Teknologjia fokusohet në të dhënat se sa procese, me programet e përbërë nga të vetë-mjaftueshme module ("klasa"), çdo rast nga të cilat ("objekte") përmban të gjitha informatat e nevojshme për të manipuluar strukturën e saj të të dhënave ("anëtarë"). Kjo është në kontrast të ekzistuese programet modulare që kishin qenë mbizotëruese për shumë vite që u përqëndrua në funksionin e një moduli, në vend se në mënyrë specifike të dhëna, por me kusht në mënyrë të barabartë për të reuse kodin , dhe vetë-mjaftueshme njësive reusable e logjikës programimit, duke bërë të mundur bashkëpuniminnëpërmjet përdorimit të moduleve të lidhura ( subroutines ). Kjo qasje më konvencionale, i cili ende vazhdon, tenton të marrin në konsideratë të dhënat dhe sjelljen e veç e veç.

Një object-oriented program mund në këtë mënyrë të shikohet si një koleksion të bashkëveprojmë objekte , në krahasim me modelin konvencional, në të cilin një program është parë si një listë të detyrave ( subroutines ) për të kryer. Në OOP, çdo objekt është i aftë të marrë mesazhe, përpunimin e të dhënave, dhe dërgimin e mesazheve me objekte të tjera. Çdo objekt mund të shihet si një "makinë" të pavarur me një rol të veçantë apo përgjegjësi. Veprimet (ose " metoda ") mbi këto objekte

Historia

Termat "objekte" dhe "orientuar" në diçka si kuptimin modern e programimit object-oriented duket për të bërë paraqitjen e tyre të parë në MIT në fund të viteve 1950 dhe fillim të viteve 1960. Në mjedisin e inteligjencës artificiale grupit, në fillim të 1960, "objekti" mund t'i referohet artikujve të identifikuar ( Lisp atomet) me pronat (atributet); Alan Kay ishte vonë për të përmendin një kuptim të detajuar të internals Lisp si një ndikim të fortë në të menduarit e tij në vitin 1966. Një tjetër shembull i hershëm MIT u Sketchpad krijuar nga Ivan Sutherland në 1960-61, në spjegim të raportit 1963 teknike bazuar në disertacionin e tij për Sketchpad, Sutherland përcaktuar nocionet e "objektit" dhe "shembull" (me konceptin e klasës i mbuluar nga "master" ose "përkufizim"), megjithëse të specializuar për ndërveprim grafike. Gjithashtu, nje MIT ALGOL version, AED-0, lidhur me të dhënat e strukturave ("plexes", në atë dialekt) direkt me procedurat, prefiguring cilat ishin quajtur më vonë "mesazhe", "metoda" dhe "funksionet anëtare".

Objektet si koncept formale në programimin u futur në 1960 në Simula 67, një rishikim i madh i Simula unë, një gjuhë programimi i dizajnuar për simulim ngjarje të veçantë , krijuar ngaOle-Johan Dahl dhe Kristen Nygaard e Qendrës Computing norvegjezeOslo . Simula 67 u ndikuar nga SIMSCRIPT dhe Hoare i propozoi "klasa rekord".Simula paraqiti idenë e klasave dhe raste ose objekte (si dhe subclasses, metoda virtuale, coroutines, dhe simulimi diskrete ngjarje) si pjesë e një paradigmë të qartë programimit. Gjuha e përdorur edhe automatike mbledhjen e mbeturinave që ishin shpikur më parë për programimit funksional gjuhën Lisp . Simula është përdorur për modelimin fizike, të tilla si modele për të studiuar dhe për të përmirësuar lëvizjen e anijeve dhe të përmbajtjes së tyre nëpërmjet porteve të ngarkesave. Idetë e Simula 67 ndikuar shumë gjuhë më vonë, duke përfshirë Smalltalk, derivatet e Lisp ( CLOS ), Object Pascal , dhe C + + .

Smalltalk gjuhës, e cila u zhvillua në Xerox Parc (nga Alan Kay dhe të tjerët) në vitet 1970, futur termi programimit object-oriented për të përfaqësuar përdorimin e përhapur të objekteve dhe mesazheve si bazë për llogaritje. Krijuesit Smalltalk u ndikuar nga idetë e futur në Simula 67, por Smalltalk është projektuar të jetë një sistem plotësisht dinamik në të cilin klasa mund të jetë krijuar dhe modifikuar dinamike dhe jo statike si në Simula 67.Smalltalk dhe me të OOP u njohën me një audiencë më të gjerë nga çështja gusht 1981 të revistës Byte.

Në vitin 1970, puna Smalltalk Kay kishte ndikuar komunitetit Lisp për të përfshirë objektin bazuar në teknikat që u prezantua për zhvilluesit nëpërmjet makinës Lisp . Eksperimentimi me zgjerime të ndryshme për të Lisp (si unazore dhe Flavors futjen e trashëgimisë të shumta dhe mixins ), çoi përfundimisht në sistemin e përbashkët Lisp Object (CLOS, një pjesë e gjuhës standardizuar e parë e programimit object-oriented, ANSI Common Lisp ), e cila integron programimit funksional dhe programimin object-oriented dhe lejon vazhdimin nëpërmjet njëprotokoll Meta-objekt . Në vitet 1980, ka qenë një përpjekje për të hartuar disa arkitektura procesor që përfshiu mbështetjen e hardware për objektet në kujtesë, por këto nuk ishin të suksesshme. Shembujt përfshijnë iAPX Intel 432 dhe zgjuar Lin Rekursiv .

Programimit object-oriented zhvilluar si metodologjia e programimit dominuese në fillim të viteve 1990 dhe në mes të gjuhëve programuese, kur në mbështetje të teknikave u bë gjerësisht i disponueshëm. Këto përfshinin Visual FOXPRO 3,0+, dhe Delphi. Dominimi i saj ishte rritur më tej nga popullariteti në rritje i user interfaces grafike , të cilat mbështeten kryesisht mbi të object-oriented teknikat e programimit. Një shembull i një biblioteke të lidhur ngushtë dinamike GUI dhe gjuhë OOP mund të gjenden në kakao kornizat për Mac OS X , të shkruara në Objective-C , një object-oriented, extension dinamike mesazheve të C në bazë të Smalltalk. OOP toolkits rritur gjithashtu popullaritetin e -shtyrë ngjarje programimit (edhe pse ky koncept nuk është i kufizuar në OOP). Disa mendojnë se bashku me GUIs (reale apo të perceptuar) ishte ajo lëvizje OOP në rrjedhë programimit.

ETH Zürich , Niklaus Wirth dhe kolegët e tij kishte qenë edhe hetuar tema të tilla si të dhënat e abstraksionit dhe programeve modulare (edhe pse kjo kishte qenë në përdorim të përbashkët në 1960 ose më herët). Modula-2 (1978) përfshinte të dyja, dhe e pasuar të projektimit, Oberon , përfshirë një qasje të veçantë të orientimit të objektit, klasa, dhe të tilla.Qasja është ndryshe nga Smalltalk, dhe shumë ndryshe nga C + +.

Object-oriented features janë shtuar në shumë gjuhë ekzistuese gjatë asaj kohe, duke përfshirë edhe Ada , BASIC , Fortran , Pascal , dhe të tjerët. Duke shtuar këto karakteristika të gjuhëve të cilat nuk ishin projektuar fillimisht për ato shpesh çoi në probleme me pajtueshmërinë dhe maintainability të kodit.

Kohët e fundit, një numër gjuhësh të kanë dalë që janë kryesisht object-oriented ende në përputhje me metodologjinë procedurale, të tilla si Python dhe Ruby . Ndoshta më të komercialisht të rëndësishme të kohëve të fundit object-oriented gjuhë Visual Basic.NET (VB.NET) dhe C # , të dy të dizajnuara për të Microsoft-it . NET platformë, dhe Java , të zhvilluar nga Sun Microsystems . Të dy kornizat e tregojnë të mirën e përdorimit të OOP, duke krijuar një abstraksion nga zbatimi në mënyrën e vet. VB.NET dhe C # mbështetjen ndër-gjuha trashëgimi, duke lejuar klasat e përcaktuara në një gjuhë në klasat e subclass përcaktuara në gjuhë tjetër. Zhvilluesit zakonisht hartojnë Java që bytecode , Java lejuar për të kandiduar në çdo sistem operativ për të cilat një Java makinë virtuale është në dispozicion. VB.NET dhe C # e bëjnë përdorimin e modelit Strategjisë për të kryer ndër gjuhën trashëgimi, ndërsa Java e bën përdorimin e modelit Adapter

Ashtu si programimin procedural çoi në përmirësimet e teknikave të tilla si programimit të strukturuar , moderne object-oriented metodat design software përfshijnë përmirësime të tilla si përdorimi i modeleve të dizajnit , të projektimit me kontratë , dhe gjuhët e modelimit (të tilla si UML ).





Leave a Reply