Zerosquare (./2187) :D'o� tu te moques ? c'est tr�s bien ainsi, il n'y a pas de probl�me avec PHP, tout a �t� g�r� de main de ma�tre.
c'est vrai que ne pas différencier les deux, ça a tellement bien marché pour [par exemple] PHP...
Zerosquare (./2187) :D'o� tu te moques ? c'est tr�s bien ainsi, il n'y a pas de probl�me avec PHP, tout a �t� g�r� de main de ma�tre.
c'est vrai que ne pas différencier les deux, ça a tellement bien marché pour [par exemple] PHP...
Meowcate (./2190) :Zerosquare (./2187) :D'où tu te moques ? c'est très bien ainsi, il n'y a pas de problème avec PHP, tout a été géré de main de maître.
c'est vrai que ne pas différencier les deux, ça a tellement bien marché pour [par exemple] PHP...
flanker (./2189) :Franchement, "pote" n'est pas le bon mot, on n'a fait que travailler ensemble sur un truc qu'on voulait voir tous les deux (une version mise à jour de livecd-creator, parce que le remplacement officiel livemedia-creator a plusieurs défauts), et c'est la première fois que j'ai travaillé avec lui en plus. Cela dit, on va peut-être le devenir, étant donné qu'il s'intéresse à plusieurs projets auxquels je m'intéresse aussi (par exemple dnfdragora).
(et sinon, j'imagine que ton pote n'a pas trouvé une façon encore plus inefficace de développer ?)
(La syntaxe C est devenu le standard de facto, cf. C++, Objective C, Java, JavaScript, C#, même Perl dans une certaine mesure. Python a décidé de faire à sa façon pourrie à la place.
)Kevin Kofler (./2195) :Tu as aussi le droit d'utiliser des outils efficaces, ça aide pas mal pour travailler. C'est vraiment très rare que j'ai des erreurs de type, vu qu'elles me sont signalées à l'écriture (avant la compilation ou le test, donc)
Sinon, pour le Python, franchement, je trouve que le langage est mal fait depuis le début: Déjà parce qu'il est interprété et dynamiquement typé, ce qui fait que pas mal d'erreurs qui seraient immédiatement relevées par le compilateur en C++ ne peuvent être détectés qu'en testant.
(Toutes ces histoires de bytestring vs. unicode auraient donné des erreurs de compilation dans un langage compilé type-safe.)Tu préfères le Python 2 qui mélange les deux, et maintenant tu regrettes le mélange… faudrait se décider.
Et ensuite parce que la syntaxe sensible à l'indentation est imbitable.Oui, ça force à avoir du code propre, je comprends que tu n'aimes pas![]()

(La syntaxe C est devenu le standard de facto, cf. C++, Objective C, Java, JavaScript, C#, même Perl dans une certaine mesure. Python a décidé de faire à sa façon pourrie à la place.Oui, tous les langages qui se sont inspirés de C ont une syntaxe qui lui ressemble. Mézencore ?)
flanker (./2197) :Je veux soit une erreur de compilation, soit une conversion automatique, mais absolument pas une erreur de conversion en temps d'exécution.(Toutes ces histoires de bytestring vs. unicode auraient donné des erreurs de compilation dans un langage compilé type-safe.)Tu préfères le Python 2 qui mélange les deux, et maintenant tu regrettes le mélange… faudrait se décider.

Avec Python 3, je n'ai aucun souci de ce genre.C'est avec Python 3 que j'ai eu ces soucis, sur un code qui marchait très bien en Python 2.
Oui, tous les langages qui se sont inspirés de C ont une syntaxe qui lui ressemble. Mézencore ?Reformulons alors: pourquoi Python ne s'est-il pas inspiré du C comme les autres?

Kevin Kofler (./2198) :Mais oui, on sait que tu n'aimes que les langages compilés et comme tout le monde devrait avoir uniquement les mêmes besoins et envies que toi, les langages interprétés ne devraient pas existerflanker (./2197) :Je veux soit une erreur de compilation, soit une conversion automatique, mais absolument pas une erreur de conversion en temps d'exécution.(Toutes ces histoires de bytestring vs. unicode auraient donné des erreurs de compilation dans un langage compilé type-safe.)Tu préfères le Python 2 qui mélange les deux, et maintenant tu regrettes le mélange… faudrait se décider.

Et as-tu essayé en injectant des caractères non-ASCII un peu partout ? C'est là le problème du Python 2 : les bugs arrivent quand un utilisateur met du non-ASCII alors que le développeur n'a testé qu'en ASCII.Avec Python 3, je n'ai aucun souci de ce genre.C'est avec Python 3 que j'ai eu ces soucis, sur un code qui marchait très bien en Python 2.
Reformulons alors: pourquoi Python ne s'est-il pas inspiré du C comme les autres?euh… parce que ? Depuis quand tous les langages devraient être inspirés du C ?



Tron (./2214) :PHP, pas vraiment. CakePHP a été construit sur le modèle de Ruby On Rail.
NoobsPHP, quoi.
Meowcate (./2218) :Ça me semble tout de même assez moche comme façon de faire :/
Le scaffolding a été créé par Ruby On Rail. En gros, à partir d'une base de données qui suit des conventions de nommage, un script doit être capable de générer le code source d'un squelette type de ton application (les models sont créés à partir des tables et liaisons de la base de données, les controllers génèrent des méthodes de base view/list/edit/delete, et des views sont générées pour chacune de ces méthodes). Ça ne crée pas le site tout seul, mais c'est une base idéale pour commencer plutôt que de partir de zéro pour des prototypes répétitifs à écrire.Même les tests unitaires peuvent être (en partie) automatisés, en se basant par exemple sur le type ou la limitation de taille des champs de la base de données. C'est assez populaire dans les frameworks web.
Et il faut répliquer les modifs SQL vers le code Ruby ?
^2flanker (./2219) :Je ne suis pas sûr de saisir ce que tu veux dire. Je n'écris jamais du code SQL pur dans le code. Par ex, tu devrais pouvoir comprendre cette requête CakePHP :
Je trouve qu'il est beaucoup mieux de générer le code SQL à partir du code Ruby.
$commandes = $this->Commandes->find()
->where(['Commandes.user_id' => $userId, 'Commandes.exported' => 0])
->contain([
'Users' => ['Groupes'], 'Clients' => ['Groupes'], 'CommandeTypes'
])
->order(['Commandes.actif' => 'ASC'])
->all();
// ou
$types = $this->Commandes->CommandeTypes->find('list', [
'keyField' => 'id',
'valueField' => 'type'
])->toArray();Pour autant, il est certain que pour écrire cette requête, il faut savoir ce qu'on veut faire en SQL.