Outils pour utilisateurs

Outils du site


issue80:c_c

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
issue80:c_c [2014/01/22 16:11] – créée andre_domenechissue80:c_c [2014/04/21 11:59] (Version actuelle) auntiee
Ligne 1: Ligne 1:
 +==== 1 ====
 +**
 Early in December I was spending some time working on a website that will eventually become my website for my freelance IT business. I started off using Bolt CMS and ended up with a design I quite liked, and overall, Bolt did everything I wanted. However, it did a lot more than I needed as well, and I have slight reservations for using a blog-oriented CMS to manage the content of a web page. Instead, I decided to give Ruby on Rails a shot, to see which option I would ultimately go with. I had previously spent a while learning both Ruby and Ruby on Rails, so jumping in wasn't quite as daunting. This month's article is for anyone hesitating about diving in, and for anyone interested in web design who would like to pick up some new skills. Early in December I was spending some time working on a website that will eventually become my website for my freelance IT business. I started off using Bolt CMS and ended up with a design I quite liked, and overall, Bolt did everything I wanted. However, it did a lot more than I needed as well, and I have slight reservations for using a blog-oriented CMS to manage the content of a web page. Instead, I decided to give Ruby on Rails a shot, to see which option I would ultimately go with. I had previously spent a while learning both Ruby and Ruby on Rails, so jumping in wasn't quite as daunting. This month's article is for anyone hesitating about diving in, and for anyone interested in web design who would like to pick up some new skills.
 +**
  
 +Au début décembre, je passais du temps à travailler sur un site Web qui deviendra finalement le site Web pour mon entreprise IT indépendante. Au départ, j'utilisais Bolt CMS et j'ai fini avec une conception que j'aimais bien, et, dans l'ensemble, Bolt faisait tout ce que je voulais. Mais il a aussi fait beaucoup plus que ce dont j'avais besoin et j'ai de légères réserves sur l'utilisation d'un CMS [en français SGC Système de Gestion de Contenu] conçu pour les blogs, pour gérer le contenu d'une page Web. Au lieu de cela, j'ai décidé de jeter un œil à Ruby on Rails, pour voir quelle option je choisirai in fine. J'avais déjà passé un certain temps d'apprentissage à la fois sur Ruby et Ruby on Rails, donc me plonger dedans n'était pas trop intimidant. L'article de ce mois-ci est pour tous ceux qui hésitent à sauter le pas et pour quiconque s'intéresse à la conception Web et voudrait acquérir quelques nouvelles compétences.
 +
 +**
 Prerequisites Prerequisites
  
Ligne 6: Ligne 12:
  
 Rails installation instructions: http://rubyonrails.org/download Rails installation instructions: http://rubyonrails.org/download
 +**
 +
 +Prérequis
 +
 +Le paquet ruby doit être installé avant d'utiliser Rails. Le paquet actuel dans Ubuntu est une version 1.9.2 (paquet : ruby1.9.1). La version actuelle est en fait la 2.0.0-p353 ; il peut donc être préférable d'installer rubis-rvm (rubis version manager) et de l'utiliser pour installer et gérer vos versions de rubis. Pour ceux qui ont besoin de l'installer également dans d'autres systèmes d'exploitation, il y a de bonnes instructions ici : https://www.ruby-lang.org/en/downloads/
 +
 +Rails instructions d'installation : http://rubyonrails.org/download
  
 +==== 2 ====
 +**
 Ruby on Rails – What is it? Ruby on Rails – What is it?
  
Ligne 16: Ligne 31:
 • Allows for easy extensibility by editing the Gemfile. • Allows for easy extensibility by editing the Gemfile.
 • Has modules for certain tasks (i.e. User authentification) which you can easily add to your own project, and helps to avoid feature overload. • Has modules for certain tasks (i.e. User authentification) which you can easily add to your own project, and helps to avoid feature overload.
 +**
 +
 +Ruby on Rails - Qu'est-ce que c'est ?
 +
 +Ruby on Rails est un cadre conçu en Ruby pour rendre la génération de sites Web complexes beaucoup plus facile. Il est conçu avec l'idée que le programmeur peut se concentrer sur le codage par convention plutôt que sur la configuration, tout en concevant le site qu'il avait à l'esprit à l'origine.
 +
 +Ruby on Rails - Pourquoi devrais-je l'essayer ?
 +• Par défaut, il utilise SCSS pour ses feuilles de style, permettant une mise en forme plus propre dans vos feuilles de style (c'est automatiquement transformé en CSS lors de l'exécution du serveur).
 +• Il intègre une configuration de serveur qui peut être démarré avec « rails server » ou « rails s » et vérifie régulièrement les modifications apportées aux fichiers, tout en publiant votre site sur localhost:3000 (port 3000 par défaut). Naturellement, on peut également l'utiliser dans un environnement de production avec un domaine réel.
 +• Il permet l'extensibilité facile en éditant le Gemfile.
 +• Il a des modules pour certaines tâches (par exemple l'authentification de l'utilisateur) que vous pouvez ajouter facilement à votre propre projet et contribue à éviter la surcharge de fonctionnalités.
 +
 +**
 • You can create your own classes and controllers, so that only items you actually use are saved in your database. • You can create your own classes and controllers, so that only items you actually use are saved in your database.
 • Error handling – This is a bit subjective, but I find that Rails' approach to throwing errors and debug information is a lot more helpful/cleaner than most other web-based languages. • Error handling – This is a bit subjective, but I find that Rails' approach to throwing errors and debug information is a lot more helpful/cleaner than most other web-based languages.
Ligne 21: Ligne 49:
 • Integrates with Git very well, allowing for clean revision control of your website's code. It can also be used to upload your site to hosts like Heroku, without the need to use FTP. • Integrates with Git very well, allowing for clean revision control of your website's code. It can also be used to upload your site to hosts like Heroku, without the need to use FTP.
 • Includes a routing table, allowing you immense control over the URL formatting and restrictions. • Includes a routing table, allowing you immense control over the URL formatting and restrictions.
 +**
  
 +• Vous pouvez créer vos propres classes et contrôleurs, afin que seuls les éléments que vous utilisez réellement soient enregistrés dans votre base de données.
 +• Gestion des erreurs - C'est un peu subjectif, mais je trouve que l'approche de Rails pour relever les erreurs et les informations de débogage est beaucoup plus utile et/ou plus propre que la plupart des autres langages sur le Web.
 +• Grandes communautés - Il y a des chances pour que vous soyez en mesure de trouver en ligne une solution à la plupart de vos problèmes et certaines régions peuvent même avoir des rencontres Rails/Ruby.
 +• Très bonne intégration avec Git, vous permettant un contrôle propre de la révision du code de votre site Web. Il peut également être utilisé pour télécharger votre site vers des hôtes comme Heroku, sans devoir utiliser FTP.
 +• Il comprend une table de routage, ce qui vous permet un immense contrôle sur le formatage et les restrictions d'URL.
 +
 +==== 3 ====
 +**
 Possible hardships: Possible hardships:
 • Very programming-focused – if this isn't your forte and you're not interested in learning, you may very well struggle. • Very programming-focused – if this isn't your forte and you're not interested in learning, you may very well struggle.
Ligne 28: Ligne 65:
 • The rails generate command can be slightly confusing at first, especially when it results in rake db:migrate errors. However, once you work your way through one error, you should have a good understanding of how to fix future ones. • The rails generate command can be slightly confusing at first, especially when it results in rake db:migrate errors. However, once you work your way through one error, you should have a good understanding of how to fix future ones.
 • If you don't know about SCSS, you will lose out on the benefit of it, but it won't impact your CSS generation. • If you don't know about SCSS, you will lose out on the benefit of it, but it won't impact your CSS generation.
 +**
  
 +Difficultés possibles :
 +• Très axé sur la programmation : si ce n'est pas votre fort et que l'apprendre ne vous intéresse pas, vous pouvez très bien avoir du mal.
 +• Nécessite une connaissance de base de Ruby : puisque Rails utilise la syntaxe Ruby pour les contrôleurs, les modèles et les assistants, il est fortement recommandé d'en avoir une connaissance pratique et fonctionnelle. Cependant, quelque chose comme http://tryruby.org/ pourra suffire, si vous êtes prêt à affiner vos connaissances tout en travaillant dans Rails.
 +• Sauf si vous suivez un tutoriel pour votre premier projet, vous pouvez rencontrer des problèmes sans savoir vraiment ce qu'il faut chercher sur Google, les erreurs étant spécifiques à vos modèles personnalisés.
 +• La commande generate de rails peut être légèrement déroutante au premier abord, surtout quand elle se termine par des erreurs rake db:migrate. Cependant, une fois que vous vous êtes débrouillé avec une erreur, vous devriez avoir une bonne compréhension de la façon de résoudre les autres.
 +• Si vous ne connaissez rien sur SCSS, vous perdrez ses avantages, mais ça n'impactera pas la génération de votre CSS.
 +
 +==== 4 ====
 +**
 You've sold me! Where do I start? You've sold me! Where do I start?
  
 The first stop I'd recommend is http://tryruby.org, in order to learn/freshen up on Ruby. Once you've completed that, Code School also offers a free course in Rails, called Rails for Zombies (http://railsforzombies.org). While it may seem silly at points, it is actually a great resource for an introduction to Rails. There are also countless books that cover Ruby on Rails (admittedly, I haven't read any, and as such don't feel I can make a recommendation). The first stop I'd recommend is http://tryruby.org, in order to learn/freshen up on Ruby. Once you've completed that, Code School also offers a free course in Rails, called Rails for Zombies (http://railsforzombies.org). While it may seem silly at points, it is actually a great resource for an introduction to Rails. There are also countless books that cover Ruby on Rails (admittedly, I haven't read any, and as such don't feel I can make a recommendation).
 +**
 +
 +C'est vendu ! Où dois-je commencer ?
 +
 +La première étape que je recommande est http://tryruby.org, afin d'apprendre Ruby ou de rafraîchir vos connaissances. Une fois que vous avez terminé, Code School offre également un cours gratuit de Rails, appelé Rails for Zombies (http://railsforzombies.org). Bien qu'il puisse sembler parfois ridicule, c'est en fait une grande ressource pour une introduction à Rails. Il y a aussi d'innombrables livres qui traitent de Ruby on Rails (j'admets que je n'en ai pas lu ; ainsi je ne me sens pas en mesure de faire de recommandation).
  
 +**
 Once you've read up on Rails and have done a tutorial of some sort, be sure to pick out a specific thing you'd like to achieve (i.e. Design a class/controller to handle pages and their content). Then look into the rails generate scaffold command. My only tip here is to make sure you integrate all the variables you'll need from the get-go in the scaffold command. An example command could be: Once you've read up on Rails and have done a tutorial of some sort, be sure to pick out a specific thing you'd like to achieve (i.e. Design a class/controller to handle pages and their content). Then look into the rails generate scaffold command. My only tip here is to make sure you integrate all the variables you'll need from the get-go in the scaffold command. An example command could be:
  
Ligne 40: Ligne 93:
 •In the above example, after running the server, you can see your pages by going to http://localhost:3000/pages •In the above example, after running the server, you can see your pages by going to http://localhost:3000/pages
 • Once you've used the scaffold command and have the files, it works best if you then generate specific controllers or models as you need them. To see a full list, type rails generate -h • Once you've used the scaffold command and have the files, it works best if you then generate specific controllers or models as you need them. To see a full list, type rails generate -h
 +**
  
 +Une fois que vous pris connaissance de Rails et que vous avez suivi un quelconque tutoriel, choisissez une chose spécifique que vous souhaitez réaliser (conception d'une classe ou d'un contrôleur pour gérer les pages et leur contenu). Ensuite, regardez la commande rails generate scaffold. Mon seul conseil ici est de vous assurer que vous intégrez toutes les variables dont vous aurez besoin dans la commande scaffold dès le départ. Un exemple de commande pourrait être :
  
 +rails generate scaffold Page title:string content:string slug:string
  
 +Cela va générer le contrôleur, le modèle et les vues nécessaires pour Page et les configurer pour avoir les attributs titre, contenu, et slug dans la base de données, que vous pourrez entrer dans la page d'édition. Puisque cet article n'est pas destiné à être un manuel détaillé, je vais vous laisser avec seulement deux autres conseils :
 +• Dans l'exemple ci-dessus, après l'exécution du serveur, vous pouvez voir vos pages en allant sur http://localhost:3000/pages
 +• Une fois que vous avez utilisé la commande scaffold et obtenu les fichiers, ça fonctionne mieux si vous  générez alors des contrôleurs ou des modèles spécifiques au fur et à mesure que vous en avez besoin. Pour voir la liste complète, tapez rails generate -h
 +==== 5 ====
 +**
 It still seems kind of daunting - can I really do this? It still seems kind of daunting - can I really do this?
 +
 +Titre : Ruby on Rails
  
 If you want a success story, the one that first jumps to mind is the creator of Freelancify, who learned Ruby on Rails in 12 weeks (specifically, from the time he began learning Ruby on Rails and the time he put Freelancify online was 12 weeks). According to his blog post, he wasn't a programmer at all before jumping into Ruby on Rails. If you want a success story, the one that first jumps to mind is the creator of Freelancify, who learned Ruby on Rails in 12 weeks (specifically, from the time he began learning Ruby on Rails and the time he put Freelancify online was 12 weeks). According to his blog post, he wasn't a programmer at all before jumping into Ruby on Rails.
Ligne 54: Ligne 117:
  
 As always, I hope you've found this article interesting, and that I have enticed one or two of you into trying Ruby on Rails. If you have any comments, questions, suggestions or requests, you're welcome to contact me at lswest34+fcm@gmail.com. I'd also be happy to hear about any experiences with Ruby or Ruby on Rails you've had. As always, I hope you've found this article interesting, and that I have enticed one or two of you into trying Ruby on Rails. If you have any comments, questions, suggestions or requests, you're welcome to contact me at lswest34+fcm@gmail.com. I'd also be happy to hear about any experiences with Ruby or Ruby on Rails you've had.
 +**
 +
 +Ça semble encore un peu intimidant : est-ce que je peux vraiment le faire ?
 +
 +Titre : Ruby on Rails
 +
 +Si vous voulez une histoire d'une réussite, le premier qui vient à l'esprit est celui du créateur de Freelancify, qui a appris Ruby on Rails en 12 semaines (plus précisément, entre le moment où il a commencé à apprendre Ruby on Rails et le moment où il a mis Freelancify en ligne, il y a eu 12 semaines). Selon son blog, il n'était pas du tout un programmeur avant de plonger dans Ruby on Rails.
 +
 +Source: http://www.jamesfend.com/learned-ruby-rails-12-weeks-launch-freelancify
 +
 +Allez-vous faire un tutoriel sur comment mettre rails en place ?
 +
 +Bien que je trouve la documentation de Ruby on Rails excellente et qu'il y ait aussi des guides en ligne, je peux comprendre que certaines personnes préfèrent un guide étape par étape, à jour, venant de moi. Si c'est le cas, faites-le moi savoir dans un e-mail à lswest34+fcm@gmail.com et je serai heureux de décrire la mise en place de Rails 4.0.2 et le démarrage d'un projet.
 +
 +Comme toujours, j'espère que vous avez trouvé cet article intéressant et que j'ai convaincu un ou deux d'entre vous à essayer Ruby on Rails. Si vous avez des commentaires, des questions, des suggestions ou des demandes, n'hésitez pas à me contacter à lswest34+fcm@gmail.com. Je serais également heureux de connaître vos expériences vécues avec Ruby ou Ruby on Rails.
 +
 +
issue80/c_c.1390403509.txt.gz · Dernière modification : 2014/01/22 16:11 de andre_domenech