DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > Programiranje
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

Programiranje Java, Perl, VB, ASP, .NET, C, C++, Pascal, Delphi Sponzor: VIP izazov 3

Odgovori
 
Alati teme Način prikaza
Staro 03. 03. 2009.   #11
Dragi Tata
dinosaurus
Master
 
Avatar Dragi Tata
 
Datum učlanjenja: 29.12.2005
Lokacija: Nova Engleska
Poruke: 636
Hvala: 79
263 "Hvala" u 66 poruka
Dragi Tata će postati "faca" uskoroDragi Tata će postati "faca" uskoroDragi Tata će postati "faca" uskoro
Default

@ Python Zealot

Da se razumemo, ja u stvari više volim Python, samo govorim sa stanovišta učenja OOP-a.

1) U Rubiju je sve objekat, čak i brojevi. U Pythonu je vidljiva razlika između ugrađenih i korisničkih tipova.
2) Podrška za privatne članove koja je u Python-u više stvar konvencije
3) Sintaksa: "self" u Pythonu kod poziva metoda.
Dragi Tata je offline   Odgovorite uz citat
"Hvala" Dragi Tata za poruku:
Staro 04. 03. 2009.   #12
degojs
I'm a PC too.
Wrote a book
 
Avatar degojs
 
Datum učlanjenja: 06.06.2005
Lokacija: Kanada
Poruke: 1.354
Hvala: 82
130 "Hvala" u 89 poruka
degojs će postati "faca" uskorodegojs će postati "faca" uskoro
Default

Citat:
Originalno napisao Dragi Tata Pogledajte poruku
1) U Rubiju je sve objekat, čak i brojevi. U Pythonu je vidljiva razlika između ugrađenih i korisničkih tipova.
Pa sad.. da li je prirodnije i razumljivije da brojevi budu brojevi ili tamo neki.. objekti?
__________________
Commercial-Free !!!

Poslednja izmena od degojs : 04. 03. 2009. u 03:28.
degojs je offline   Odgovorite uz citat
2 članova zahvaljuje degojs za poruku:
Staro 04. 03. 2009.   #13
nn.nn
nobody
Expert
 
Avatar nn.nn
 
Datum učlanjenja: 19.04.2007
Poruke: 537
Hvala: 14
705 "Hvala" u 106 poruka
nn.nn će postati "faca" uskoronn.nn će postati "faca" uskoronn.nn će postati "faca" uskoronn.nn će postati "faca" uskoronn.nn će postati "faca" uskoronn.nn će postati "faca" uskoronn.nn će postati "faca" uskoro
Default

Citat:
Originalno napisao degojs Pogledajte poruku
Pa sad.. da li je prirodnije i razumljivije da brojevi budu brojevi ili tamo neki.. objekti?
A šta su brojevi onda kad su samo "brojevi"? Nisu li to ti... objekti? Da ne bude zabune, ozbiljno pitam. Zašto je taj koncept (brojevi kao objekti) posebno težak za razumevanje za nekog ko barata OOP? Zar to nije samo jedna apstrakcija?

Uostalom, čini mi se kad god se pominje to sa brojevima, to je da bi se naglasilo da je Ruby do temelja objektno orjentisan. Ne vidim šta tu može praktično da pravi problem kad treba da sedneš nešto da kodiraš. Mada može i stojeći, ako imaš odgovarajući sto.

Lična nota: ja sam Ruby učio kao, praktično, totalni početnik u programiranju, ako izuzmemo NAR-1 i 2, nekakav teorijski (papirni) Basic, nešto malo shell skriptovanja i povremeno očijukanje (bez pipanja) sa kodom u nekim drugim jezicima. Ne tvrdim da sam nešto mnogo napredovao, ali nisu brojevi ono što mi je možda bilo teško da razumem.

Poslednja izmena od nn.nn : 04. 03. 2009. u 08:54.
nn.nn je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #14
kaizen
old school
Professional
 
Avatar kaizen
 
Datum učlanjenja: 07.02.2006
Poruke: 340
Hvala: 32
44 "Hvala" u 20 poruka
kaizen će postati "faca" uskoro
Thumbs down

Citat:
Originalno napisao degojs Pogledajte poruku
Pa sad.. da li je prirodnije i razumljivije da brojevi budu brojevi ili tamo neki.. objekti?
Prirodnije i razumljivije samo za nekog ko ni ne razume koncept OOPa.

Broj (ili da budemo precizniji, instanca broja) je odličan primer objekta:
* ima stanje (vrednost), koje je u ovom slučaju nepromenljivo, google:"immutable object"
* ima ponašanje izgrađeno oko tog stanja (koristi ga i zavisi i od njega, dobar primer su aritmetičke operacije)
* ima hijerarhiju (Float, Integer...)

Poslednja izmena od kaizen : 04. 03. 2009. u 10:53.
kaizen je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #15
Milos Vukotic
Knowledge base
Wrote a book
 
Avatar Milos Vukotic
 
Datum učlanjenja: 07.06.2005
Lokacija: Neđe ođe...
Poruke: 1.197
Hvala: 339
688 "Hvala" u 178 poruka
Milos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamen
Default

Nije u tome poenta... Prirodnije je da broj bude broj jer smo ih tako naučili još prije osnovne škole, jednako kao što je prirodnije za biologa da ljude s kojima svakodnevno komunicira posmatra kao ljude a ne kao žive organizme koji stupaju u interakciju, ili kao što je nekom banderašu jednostavnije da posmatra struju kao struju a ne kao sinusoidalne oscilacije elektrona duž provodnika... Broj je broj
__________________
Чак Норис може да си ги врзе врвките на чевлите со стапалата.
Milos Vukotic je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #16
kaizen
old school
Professional
 
Avatar kaizen
 
Datum učlanjenja: 07.02.2006
Poruke: 340
Hvala: 32
44 "Hvala" u 20 poruka
kaizen će postati "faca" uskoro
Default

Citat:
Originalno napisao Milos Vukotic Pogledajte poruku
Nije u tome poenta... Prirodnije je da broj bude broj jer smo ih tako naučili još prije osnovne škole ...
Tvojom logikom, parče kôda koje sledi je potpuno neprirodno i nerazumljivo, jer Bože moj, drugačije smo učili iz matematike:

Kôd:
i = i + 1
kaizen je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #17
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

njah, a jel prirodnije onda da string bude niz slova, a ne objekat? I niz isto tako, zasto je prirodnije da je niz objekat nego da je broj objekat?

osnovna OOP ideja je da svaki komad informacije ume sam da se snadje sa svojim vrednostima, bez da neko sa strane petlja po tome direktno, i po toj logici najnormalnija je ideja da svi tipovi podataka treba da budu objekti, sa geterima i seterima i pridruzenim metodama koje handluju operacije nad njihovim vrednostima..
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #18
Petar Marić
Python Ambassador
Master
 
Avatar Petar Marić
 
Datum učlanjenja: 06.06.2005
Lokacija: Novi Sad
Poruke: 602
Hvala: 28
27 "Hvala" u 17 poruka
Petar Marić će postati "faca" uskoro
Pošaljite ICQ poruku za Petar Marić
Lightbulb

Citat:
Originalno napisao Dragi Tata Pogledajte poruku
1) U Rubiju je sve objekat, čak i brojevi. U Pythonu je vidljiva razlika između ugrađenih i korisničkih tipova.
Koliko znam i broj je objekat, što se uostalom može proveriti i u konzoli:
Kôd:
In [1]: broj = -5

In [2]: broj.
broj.__abs__          broj.__int__          broj.__reduce_ex__
broj.__add__          broj.__invert__       broj.__repr__
broj.__and__          broj.__long__         broj.__rfloordiv__
broj.__class__        broj.__lshift__       broj.__rlshift__
broj.__cmp__          broj.__mod__          broj.__rmod__
broj.__coerce__       broj.__mul__          broj.__rmul__
broj.__delattr__      broj.__neg__          broj.__ror__
broj.__div__          broj.__new__          broj.__rpow__
broj.__divmod__       broj.__nonzero__      broj.__rrshift__
broj.__doc__          broj.__oct__          broj.__rshift__
broj.__float__        broj.__or__           broj.__rsub__
broj.__floordiv__     broj.__pos__          broj.__rtruediv__
broj.__getattribute__ broj.__pow__          broj.__rxor__
broj.__getnewargs__   broj.__radd__         broj.__setattr__
broj.__hash__         broj.__rand__         broj.__str__
broj.__hex__          broj.__rdiv__         broj.__sub__
broj.__index__        broj.__rdivmod__      broj.__truediv__
broj.__init__         broj.__reduce__       broj.__xor__

In [2]: broj.__abs__()
Out[2]: 5

In [3]: abs(broj)
Out[3]: 5

In [4]: broj.__abs__?
Type:           method-wrapper
Base Class:     <type 'method-wrapper'>
String Form:    <method-wrapper '__abs__' of int object at 0x002D7F68>
Namespace:      Interactive
Docstring:
    x.__abs__() <==> abs(x)
Citat:
Originalno napisao Dragi Tata Pogledajte poruku
3) Sintaksa: "self" u Pythonu kod poziva metoda.
self nije deo sintakse već je obična promenljiva - možeš je zvati i this i that, ali znaj da ćeš time oneraspoložiti druge Python programere. Uostalom pročitaj šta o self misle Bruce Eckel i Guido van Rossum.
__________________
Python Ambassador of Serbia
Petar Marić je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #19
Milos Vukotic
Knowledge base
Wrote a book
 
Avatar Milos Vukotic
 
Datum učlanjenja: 07.06.2005
Lokacija: Neđe ođe...
Poruke: 1.197
Hvala: 339
688 "Hvala" u 178 poruka
Milos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamenMilos Vukotic je pravi dragi kamen
Default

Citat:
Originalno napisao kaizen Pogledajte poruku
Tvojom logikom, parče kôda koje sledi je potpuno neprirodno i nerazumljivo, jer Bože moj, drugačije smo učili iz matematike:

Kôd:
i = i + 1
Grešiš, sinak, mojom logikom je prirodnije da se držimo onoga što lakše i brže završava posao

A tvojom logikom je prirodnije da pišem 2.increaseValue(2) nego 2+2
I nemoj da si pomenuo operatore i overloading i ostalo, 2+2 je 2+2 i neću ni da razmišljam o tome

Htjedoh reći da je, kad unaprijediš svoje znanje u bilo kojoj oblasti, moguće to znanje primijeniti i na svakodnevni život i redefinisati shvatanje davno usvojenih stvari, ali da je često znatno jednostavnije držati se starog znanja.
Možeš npr. imati doktorat iz dinamike fluida ali ne znači da ćeš efikasnije napuniti čašu vode ako koristiš Stoksovu formulu i Bernulijevu jednačinu, samo ćeš izgubiti vrijeme.
__________________
Чак Норис може да си ги врзе врвките на чевлите со стапалата.
Milos Vukotic je offline   Odgovorite uz citat
Staro 04. 03. 2009.   #20
Petar Marić
Python Ambassador
Master
 
Avatar Petar Marić
 
Datum učlanjenja: 06.06.2005
Lokacija: Novi Sad
Poruke: 602
Hvala: 28
27 "Hvala" u 17 poruka
Petar Marić će postati "faca" uskoro
Pošaljite ICQ poruku za Petar Marić
Lightbulb

Evo još jednog, boljeg, dokaza da broj zaista jeste objekat:
Kôd:
In [1]: type(5)
Out[1]: <type 'int'>

In [2]: isinstance(5, object)
Out[2]: True

In [3]: issubclass(int, object)
Out[3]: True
__________________
Python Ambassador of Serbia
Petar Marić je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Java programiranje misha topola Programiranje 10 13. 01. 2011. 14:33
vb programiranje bonkic Programiranje 2 12. 09. 2010. 16:31
Internet Programiranje marevuksa Sva početnička pitanja 7 08. 10. 2007. 10:29
Programiranje RIA MrSteel Programiranje 11 15. 05. 2007. 14:17


Vreme je GMT +2. Trenutno vreme je 01:02.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.