Pagina 1 di 2
SFOGO: indovinello per programmatori .NET
Inviato: mar mag 15, 2012 10:53 am
da Hellraiser
Chi mi sa dire quali sono gli errori presenti nel seguente codice?
Class MyClass{
IntCollection intColl = new IntCollection();
public MyClass(){
int newId = this.AddIdToCollection<IntCollection>(1,intColl);
}
public int AddIdToCollection<T>(int idToAdd, T collection){
((IEnumerable)collection)).add(idToAdd);
return idToAdd++;
}
}
Poi vi racconto il motivo di questa domanda
Re: SFOGO: indovinello per programmatori .NET
Inviato: mar mag 15, 2012 12:16 pm
da Pitchblack
il punto e virgola alla fine delle varie linee??????
Ora ho il visual studio occupato!
Appena mi si libera controllo meglio!!!
Sei un programmatore VB.NET????
Interessante! Mi sa che ci dovremmo fare qualche chiacchierata!!!!

Re: SFOGO: indovinello per programmatori .NET
Inviato: mar mag 15, 2012 1:22 pm
da Hellraiser
E' c#

Re: SFOGO: indovinello per programmatori .NET
Inviato: mar mag 15, 2012 2:12 pm
da Pitchblack
Hellraiser ha scritto:E' c#

No C# non me lo filo assolutamente!!!!
Mi basta il VB "classico"!!!!

Re: SFOGO: indovinello per programmatori .NET
Inviato: mar mag 15, 2012 3:56 pm
da peppeunz
non so ma il motivo della domanda sarà che è uno scheletro proposto dallo stesso VisualStudio, giusto?
Re: SFOGO: indovinello per programmatori .NET
Inviato: mer mag 16, 2012 1:34 pm
da Hellraiser
No il motivo della domanda è che non capisco come ad un coloquio si possa presentare gente LAUREATA con 4 CERTIFICAZIONI Microsoft, che dice di guadagnare più di me che sono l'intervistatore e il responsabile della divisione sviluppo web della società che dovrebbe assumerlo, ma che non sa scrivere codice riutilizzabile, non conosce i pattern più usati e, peggio ancora, non conosce nemmeno bene il linguaggio per il quale ha conseguito la certificazione!!!
Hanno tutti scaricato i questionari dai sit pirata e studiato le domande del test di certificazione a memoria. E' l'unica spiegazione possibile. Mi piacerebbe andare dai loro datori di lavoro e propormi io a questo punto...
Re: SFOGO: indovinello per programmatori .NET
Inviato: mer mag 16, 2012 2:42 pm
da Giacomino
Ok... e ora vuoi dirci quali sono gli errori?!?

Re: SFOGO: indovinello per programmatori .NET
Inviato: mer mag 16, 2012 3:58 pm
da Maurizio
Hellraiser ha scritto:No il motivo della domanda è che non capisco come ad un coloquio si possa presentare gente LAUREATA con 4 CERTIFICAZIONI Microsoft, che dice di guadagnare più di me che sono l'intervistatore e il responsabile della divisione sviluppo web della società che dovrebbe assumerlo, ma che non sa scrivere codice riutilizzabile, non conosce i pattern più usati e, peggio ancora, non conosce nemmeno bene il linguaggio per il quale ha conseguito la certificazione!!!
Hanno tutti scaricato i questionari dai sit pirata e studiato le domande del test di certificazione a memoria. E' l'unica spiegazione possibile. Mi piacerebbe andare dai loro datori di lavoro e propormi io a questo punto...
Non mi stupisce la cosa. Ognuno, compreso il sottoscritto si adegua a cosa il suo ambiente lavorativo gli chiede.
Probabilmente queste persone sono realmente valide, ma all'interno di un altro contesto. In quello dove sei tu hanno invece parecchie lacune, tecniche, organizzative e procedurali, ma non mi stupirebbe se passato un tempo di apprendistato/apprendimento breve fossero perfettamene in grado di tornare al livello suggerito dal curriculum.
Per capirci, io all'interno della mia azienda, sono considerato un'ottima risorsa, ma ho sviluppato conoscenze specifiche su cose utili alla MIA azienda. Sono sicuro che se dovessi fare un colloquio con altri, magari sarei considerato un ignorante.

Re: SFOGO: indovinello per programmatori .NET
Inviato: mer mag 16, 2012 4:45 pm
da pike
Anche perchè sviluppare prodotti per riutilizzo proprio è un discorso, sviluppare prodotti per conto terzi è tuuutta un altra minestra.
Esempio sciocco?
Ho fatto un piccolo batch che tramite Pslist e pskill termina remotamente alcuni processi che si possono "incagliare".
Il batch è stato concepito per funzionare interattivamente, dopo aver inserito la workstation a cui terminare i processi, ed in output rifa un pslist qgrep-ato dei processi che non devono più essere in esecuzione.
Funziona? Sì
Serve? Solo in questo contesto!
Molto meglio sarebbe stato realizzare un batch similare (o più evoluto) che poteva essere usato all'interno di procedure ricorsive (ad esempio, data una tabella in CSV, primo campo nome workstation, separati da una virgola tutti i processi da sterminare) sarebbe stato molto più performante e riutilizzabile.
(e io non so programmare)
Re: SFOGO: indovinello per programmatori .NET
Inviato: ven mag 18, 2012 9:54 am
da Hellraiser
Maurizio ha scritto:
Non mi stupisce la cosa. Ognuno, compreso il sottoscritto si adegua a cosa il suo ambiente lavorativo gli chiede.
Probabilmente queste persone sono realmente valide, ma all'interno di un altro contesto. In quello dove sei tu hanno invece parecchie lacune, tecniche, organizzative e procedurali, ma non mi stupirebbe se passato un tempo di apprendistato/apprendimento breve fossero perfettamene in grado di tornare al livello suggerito dal curriculum.
Per capirci, io all'interno della mia azienda, sono considerato un'ottima risorsa, ma ho sviluppato conoscenze specifiche su cose utili alla MIA azienda. Sono sicuro che se dovessi fare un colloquio con altri, magari sarei considerato un ignorante.

Forse hai ragione. Forse sono io uno dei pochi romantici che ancora pensano che sia necessario amare il proprio lavoro per farlo bene. Forse sono l'unico che si tiene aggiornato costantemente, cerca di capire quali sono se sue lacune e cerca di migliorarle per essere pronto nel momento in cui un problema particolare si presenta durante lo svolgimento di un progetto.
Ma forse la verità è che spesso trovi gente piena di titoli che sfoggiano solo in fase contrattuale per guadagnare di più, salvo, una volta assunti, non dimostrarsi per nulla all'altezza di cotanta fama. Conosco uno con più di 20 certificazioni, responsabili dello svilupo in una banca. Mettendo le mani nel suo codice mi si sera accapponata la pelle.
Comunque per chi fosse curioso in quel codice c'è un errore grave e due mancate best practices:
L'errore sta nel casting:
((IEnumerable)collection)).add(idToAdd);
Se alla function generica viene passato un oggetto di tipo non enumerable, si avrà un errore di runtime. Per rafforzare il safe typing va aggiunto il modificatore where al metodo spificando il tipo base del tipo generico.
Gli erroi veniali sono:
- il "this" prima di ogni statement, a parte in qualche occasione particolare, viene comunque rimosso dal compilatore ed è superfluo.
- La chiamata a AddIdToCollection può essere fatta senza specificare l'argomento tipo <T>, perché questo viene inferito dal tipo di parametro in entrata. Solo quando c'è una certa ambiguità è necessario esplicitare il parametro di tipo.
Il codice corretto sarebbe questo:
public MyClass(){
int newId = AddIdToCollection(1,intColl);
}
public int AddIdToCollection<T>(int idToAdd, T collection) where T : IEnumerable
{
collection.add(idToAdd);
return idToAdd++;
}
}
Re: SFOGO: indovinello per programmatori .NET
Inviato: ven mag 18, 2012 7:28 pm
da joker
Re: SFOGO: indovinello per programmatori .NET
Inviato: ven mag 18, 2012 9:41 pm
da ughino85
ehm.. da quasi ignorante in merito a c# (l'ho usato un po' in un esame ma per applicazioni windows) ho una domandina.. perchè si scrive
collection.add(idToAdd);
e non
T.add(idToAdd);
se la domanda è banale chiedo viena..
penso che comunque dovrò impararmelo un po' di c# oltre al php..

Re: SFOGO: indovinello per programmatori .NET
Inviato: ven mag 18, 2012 10:35 pm
da pike
Ahem... Ocio Joker.
Visto che PHP è piuttosto facilino, molta gente fa delle schifezze, definendole "applicazioni".
Al punto che qualcuno lo detesta alla follia. Ma mica in sè. Solo perchè lo usano dei Cerebrolesi.
Re: SFOGO: indovinello per programmatori .NET
Inviato: ven mag 18, 2012 10:36 pm
da pike
Ahem... Ocio Joker.
Visto che PHP è piuttosto facilino, molta gente fa delle schifezze, definendole "applicazioni".
Al punto che qualcuno lo detesta alla follia. Ma mica in sè. Solo perchè lo usano dei Cerebrolesi.
R: SFOGO: indovinello per programmatori .NET
Inviato: sab mag 19, 2012 12:16 am
da sara23
Ed io pensavo fosse una parentesi tonda chiusa in un punto dove non ce n'è una aperta...

però ho preso il punto giusto dove c'era l'errore
Sent from my GT-I9100 using Tapatalk 2
Re: SFOGO: indovinello per programmatori .NET
Inviato: sab mag 19, 2012 2:00 pm
da joker
pike ha scritto:Ahem... Ocio Joker.
Visto che PHP è piuttosto facilino, molta gente fa delle schifezze, definendole "applicazioni".
Al punto che qualcuno lo detesta alla follia. Ma mica in sè. Solo perchè lo usano dei Cerebrolesi.
non so cosa intendi con ocio... quello che volevo dire io è che, io sono perito informatico e che per 4 anni ho lavorato a milano... come sviluppatore python xml etc etc(e altra roba che ho dimenticato...) nulla da dire contro chi fa sto lavoro con passione, gli piace sviluppare e fare codici...
io non la avevo e ho deciso di andare a fare altro che anche se a volte mi "obbliga" a lavorare 16 ore al giorno non mi pesa
e dio benedica il giorno che ho deciso di ributtarmi sull'universita in un altro campo nonostante avessi il posto fisso etc etc

Re: SFOGO: indovinello per programmatori .NET
Inviato: lun mag 21, 2012 4:31 pm
da Hellraiser
ughino85 ha scritto:ehm.. da quasi ignorante in merito a c# (l'ho usato un po' in un esame ma per applicazioni windows) ho una domandina.. perchè si scrive
collection.add(idToAdd);
e non
T.add(idToAdd);
se la domanda è banale chiedo viena..
penso che comunque dovrò impararmelo un po' di c# oltre al php..

T è l'argomento di tipo. collection è l'istanza del tipo T

Re: SFOGO: indovinello per programmatori .NET
Inviato: lun mag 21, 2012 4:34 pm
da Hellraiser
joker ha scritto:e dio benedica il giorno che ho deciso di ributtarmi sull'universita in un altro campo nonostante avessi il posto fisso etc etc

Il mio più grande rimpianto è non aver finito gli studi linguistici. Ma purtroppo non è dipeso completamente da me.
Per curiosità, ora che fai?
Re: SFOGO: indovinello per programmatori .NET
Inviato: lun mag 21, 2012 4:40 pm
da pike
joker ha scritto:non so cosa intendi con ocio...
Mi scusi Dotto Joker, errai il nick con il buon Ughino85... Perdoni se può...
Re: SFOGO: indovinello per programmatori .NET
Inviato: lun mag 21, 2012 6:24 pm
da ughino85
Hellraiser ha scritto:ughino85 ha scritto:ehm.. da quasi ignorante in merito a c# (l'ho usato un po' in un esame ma per applicazioni windows) ho una domandina.. perchè si scrive
collection.add(idToAdd);
e non
T.add(idToAdd);
se la domanda è banale chiedo viena..
penso che comunque dovrò impararmelo un po' di c# oltre al php..

T è l'argomento di tipo. collection è l'istanza del tipo T

ah ecco.. ho interpretato male il codice..

thanks

@pike: mi stai dando del cerebroleso!?

comunque reputo, forse sbagliando, che il grado di difficoltà dipende molto da quello che uno ci deve fare o meno.. fino ad ora ho sempre usato PHP per quello che, per quello che dovevo fare io, mi era più che sufficiente ma è circa una settimana che mi sto ri-cimentando nell'ambiente .NET, in particolare c#, per avere qualche strumento in più e da quel poco che vedo, le solide basi di Java che l'università mi ha fornito, mi stanno tornando molto utili..
