[Python] Ma Go non ha le classi
enrico franchi
enrico.franchi a gmail.com
Sab 28 Mar 2015 11:50:21 CET
2015-03-27 21:12 GMT+00:00 Federico Fissore <federico a fsfe.org>:
> Carlos Catucci ha scrito il 26/03/2015 alle 22:16:
>
>> Scopro solo ora (ni ritagli di tempo mi sto guardando questo linguaggio)
>> che Go non ha le classi. Va considerao lo stesso un linguaggio OOP?
>>
>>
> Fosse questo l'unica problema
Perche' "non avere le classi" dovrebbe essere un problema?
> : prova ad scrivere un programma che apre file in 3 punti diversi,
> inserisci deliberatamente un baco e poi dallo ad un collega e misura quanto
> ci mette a trovarlo
>
Se un programma che apre files in *soli* 3 punti e' un problema da
debuggare per i tuoi colleghi, suggerirei di comprare colleghi diversi... ;)
> python ha questa cosa futuristica chiamata "traceback" che forse i
programmatori di go non conoscevano.
A me viene il dubbio che sia tu a non conoscere go... mi sembra che il
concetto di traceback sia perfettamente noto agli implementatori di go, e
dove ha senso lo usano normalmente:
package main
func f() {
g()
}
func g() {
h()
}
func h() {
j()
}
func j() {
i()
}
func i() {
panic("aaaah")
}
func main() {
f()
}
panic: aaaah
goroutine 1 [running]:
main.i()
/tmp/sandbox530032528/main.go:20 +0xc0
main.j()
/tmp/sandbox530032528/main.go:16 +0x40
main.h()
/tmp/sandbox530032528/main.go:12 +0x40
main.g()
/tmp/sandbox530032528/main.go:8 +0x40
main.f()
/tmp/sandbox530032528/main.go:4 +0x40
main.main()
/tmp/sandbox530032528/main.go:24 +0x40
goroutine 2 [runnable]:
runtime.forcegchelper()
/usr/src/go/src/runtime/proc.go:90
runtime.goexit()
/usr/src/go/src/runtime/asm_amd64p32.s:1086 +0x1
goroutine 3 [runnable]:
runtime.bgsweep()
/usr/src/go/src/runtime/mgc0.go:82
runtime.goexit()
/usr/src/go/src/runtime/asm_amd64p32.s:1086 +0x1
> quindi in python a individuare l'errore ci metti 0 secondi, perchè ti
> stampa il nome file e riga in cui si è generato l'errore
Ora, parliamoci chiaro: in praticamente ogni programma il punto in cui si
manifesta l'errore e il punto in cui si origina l'errore sono
potenzialmente due bestie molto diverse. Se il programma e' scritto bene o
e' piccolo, non saranno troppo distanti. Ma di per se non c'e' nessuna
garanzia. In generale non direi che la mancanza del traceback sia
particolarmente rilevante
--
.
..: -enrico-
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150328/6ae10979/attachment.html>
Maggiori informazioni sulla lista
Python