タグ付けされた質問 「ruby-on-rails」

Ruby on Railsは、プログラマーの幸福と持続可能な生産性の維持のために最適化されたオープンソースのWeb開発フレームワークです。多くのことは慣習によって定義され、生産性を維持するために物事を再発明する必要がなくなります。

16
プログラマーは、言語とフレームワークをどの程度自由に選択できますか?
私は主にC#指向の会社で働き始めました。JavaとJRubyが好きな人は数人いますが、ここではC#が好きなプログラマーの大部分です。私が雇われたのは、Webアプリケーションの構築に多くの経験を持ち、JRuby on Railsやnodejsのような新しいテクノロジーに傾倒したためです。 私は最近、短時間で多くのことを成し遂げることに重点を置いて、Webアプリケーションを構築するプロジェクトに着手しました。ソフトウェアリーダーは、レールの代わりにmvc4を使用するよう指示しています。私はmvc4を知らない、C#を知らない、そしてWebアプリケーションサーバーとフロントエンドUIを作成する責任があるのは私だけである以外は、それは大丈夫かもしれません。 mvc4を使用する代わりに、私がすでに非常によく知っているフレームワーク(Rails)を使用することは意味がありませんか?この決定の背後にある理由は、技術リーダーがJruby / railsを知らず、コードを再利用する方法がないことでした。 カウンター引数: 彼はコードに貢献することはなく、率直に言って、 このプロジェクトには必要ありません。そのため、彼がJRuby / railsを知っているかどうかは重要ではありません。 JRubyがコードをプルしたり、その逆を行うことができる多くのJavaアプリがあるため、実際にコードを再利用できます。実際、彼はJavaライブラリをJRuby on Railsアプリで実行するだけでなく、JavaライブラリをC#に変換するためのリソースをいくつか用意しています。彼はJavaやJRubyが好きではないからです 多くのWebアプリケーションを作成しましたが、なじみのないものを使用するとスピンアップが発生し、今までのように短時間で素晴らしいアプリケーションを作成することができません。これは問題ありません。この分野では新しい技術を学ぶことが重要です。問題は、このプロジェクトでは、多くのことを迅速に行う必要があるということです。 開発者はどの時点でツールを選択できますか?これは会社に依存していますか?私の会社は嫌ですか、これは正常と考えられていますか?環境に優しい牧草地はありますか?私はこれを間違った方法で見ていますか?

6
データベース構成に関しては、Latin-1をUTF-8で使用する必要がありますか?
私が働いている会社でMySQLを使用しており、Ruby on Railsを使用してクライアント向けアプリケーションと内部アプリケーションの両方を構築しています。 ここで働き始めたとき、私は今まで遭遇したことのない問題に遭遇しました。実稼働サーバー上のデータベースはLatin-1に設定されます。これは、ユーザーがUTF-8文字をコピーして貼り付けるユーザー入力があるたびに、MySQL gemが例外をスローすることを意味します。 私の上司は、これらのほとんどが印刷できない文字であるため、これらの「悪い文字」と呼び、それらを取り除く必要があると言います。これを行う方法はいくつかありますが、最終的にはUTF-8文字が必要な状況に陥りました。さらに、特にこの問題について読んだ唯一の解決策はデータベースをUTF-8に設定することであるように思えるので、少し面倒です(私にとって理にかなっています)。 Latin-1に固執することについて聞いた唯一の議論は、印刷できないUTF-8文字を許可すると、MySQLでテキスト/フルテキスト検索が台無しになる可能性があるということです。これは本当ですか? UTF-8ではなくLatin-1を使用する他の理由はありますか?それが優れており、よりユビキタスになることは私の理解です。


3
今日の(複雑な)Web環境向けにジュニアプログラマをトレーニングするにはどうすればよいですか?
現在、当社は、ほとんどの場合、Ruby on Rails WebサーバーとJavaのキオスクシステムからC / C ++の組み込みデバイス(標準Webブラウザーのインターフェースを含む)までのさまざまなRESTクライアントで構成されるアプリケーションを開発しています。チームを拡大する必要があり、優秀なシニアプログラマを見つけることができなかったため、会社とともに成長するジュニアプログラマのトレーニングに力を入れることにしました。 すでにRubyとRailsの本をいくつか提供し、いくつかのおもちゃプログラムを作成するように依頼しましたが、現在のWebプログラミングの学習曲線がいかに急勾配であるかを理解しています。 15年前にプログラミングを始めたとき、DelphiとSource Safeのみを使用し、使用可能なソフトウェアを最初から作成することができました。どちらもシンプルなツールであり、環境の内部構造を掘り下げるのは簡単でした。ゆっくりとサードパーティのフレームワークの使用を開始し、CVS、SVN、そして最終的にGitに切り替えて、HTTP、JavaScript、CSS、RESTなどの今日のWebを構成する要素を学びました。今日、長年の経験の後でも、 Delphiについて過去に行ったようにRuby on Railsが内部でどのように機能するかについても重要であり、私にとって重要なことは、基本的な学習ブロックを使用しているツールに接続できることです。 私が雇っているプログラマーは、チームと統合して使用可能なものを作成するのに長い時間がかかるようです。なぜなら、単一のフレームワーク(レール)を使用することを学ぶことはたくさんあるからです:Ruby、HTML、CSS、JavaScript、 REST、テストケース、データベースアクセス(フレームワーク内に魔法のように構築されたSQLを使用!)、MVC、3つの異なるパッケージマネージャー(Ubuntuに最適、Rubyにgemとbundler)、ssh、git、Apache、Phusion Passengerのデプロイなど ジュニアプログラマーと直接やり取りする必要があるのは初めてなので、私は迷っています。非常に多くの選択肢がある場合に、Web開発の今日のベストプラクティスについてジュニアプログラマーを訓練する最良の方法は何ですか?

10
RoRの欠点は何ですか?[閉まっている]
私は現在、Web開発のためにどのサーバーサイド言語を学び、使用するかを決定しようとしています.x、y、またはzが良い理由に関する情報を得るのは比較的簡単ですが、それぞれの欠点を把握するのは難しいですそのうちの。 特に、他の特定の言語/フレームワークとは対照的に、Ruby on Railsの学習や使用にどのような欠点があるのか​​興味があります。

7
ASP.NET MVCでできることとRuby on Railsでできないことは何ですか?[閉まっている]
ASP.NET MVCとRailsの使用領域は似ており、同じアーキテクチャを中心に構築されています。どちらのフレームワークも比較的新しく、オープンソースです。 それで、私が知りたいRailsプログラマーとして、ASP.NET MVCができることとRuby on Railsができないこと、そしてその逆のことを知りたいですか?

12
テスト駆動開発(TDD)は実際に実際のプロジェクトに利益をもたらしましたか?
コーディングは初めてではありません。私は今15年以上にわたって(まじめに)コーディングしてきました。私はいつも自分のコードに対していくつかのテストを行ってきました。ただし、ここ数か月にわたって、Ruby on Railsを使用してテスト駆動設計/開発(TDD)を学んでいます。これまでのところ、私は利益を見ていません。 いくつかのテストを書くことにはいくつかの利点がありますが、ごくわずかです。そして、最初にテストを書くというアイデアは好きですが、実際のコードをデバッグするよりも、テストのデバッグに時間を費やして、自分の本当の意味を伝えるようにします。これはおそらく、テストコードがテストするコードよりもかなり複雑になることが多いためです。これが利用可能なツール(この場合はRSpec)に不慣れであることを願っています。 ただし、この時点で、失望のレベルと期待を裏切るパフォーマンスの欠如が許容できないレベルを超えています。これまでのところ、TDDから私が見ている唯一の価値は、他のプロジェクト/ファイルのテンプレートとして機能するRSpecファイルの成長するライブラリです。これは実際のプロジェクトコードファイルよりもはるかに有用ではなく、おそらくあまり有用ではありません。 入手可能な文献を読むと、TDDは前もって大きな時間を費やしているように見えますが、最終的には報われます。私はただ疑問に思っています、実世界の例はありますか?この大きな不満は現実の世界で報われるのでしょうか? ここのどこかでこの質問を見逃さなかったことを本当に願っています。検索しましたが、この時点ですべての質問/回答は数年前のものです。TDDについて悪いことを言う開発者を見つけたのはめったにありませんでした。しかし、特定の実世界の例を指し示している人はいないようです。2011年にコードをデバッグしている人は、完全な単体テストスイートを用意してくれてありがとう(コメントは2008年に作成されたと思います)という答えを1つ読みました。 だから、私は、これらすべての年月の後に、ペイオフが本物であることを示す例が最終的にありますか?TDDを使用して設計/開発され、単体テストの完全なセットを持ち、実際に見返りを感じたコードを実際に継承または戻した人はいますか?それとも、テストが何をテストしているのか(そしてなぜそれが重要だったのか)を把握しようとして非常に多くの時間を費やしていたので、コードを掘り下げて掘り下げましたか?

9
実動サーバーでの開発
今日、私は本番サーバーでアプリケーションを開発することで怒鳴られました。「実稼働サーバーでの開発は受け入れられません-これまでに!」 これが状況です。 開発インスタンスをセットアップしました。 http://example.com:3000 実稼働インスタンスは次のとおりです。 http://example.com すべての開発作業を完了し、http://example.com:3000クライアントが変更に満足したら、それらをに移動しますhttp://example.com。 私が使用しているアプリケーションは古いRuby on Railsアプリケーションです。最初は開発環境をローカルに設定しようとしましたが、実行することはできませんでした。しばらく試した後、私はあきらめ、本番サーバーで開発することにしました。 繰り返しますが、私はばかですか?おそらくそうですが、私はここ数年、Web開発を行ってきましたが、このような状況に遭遇したことはありません。誰が正しいのか?

8
私の履歴書ではRailsではなくRuby [終了]
私は博士号に取り組んでいる間5年間Rubyでプログラミングしてきたため、履歴書のスキルとしてRubyをリストしました。論文。私はこれを主に自然言語処理アルゴリズムの実装に使用しています。 私は仕事を探し始めており、いくつかのサイトに履歴書を投稿しました(特定の対象となる仕事に応募する際の特別なボーナスとして)。今、私は採用担当者に電話をかけて、Ruby on Railsの仕事を提供してもらいます。問題は、私がRailsを学んだことがないということです。博士号のために私がやっていることとは関係ありませんでした。 私の時間と彼らの時間を無駄にしないために、どのようにこの状況に対処することをお勧めしますか?(そして、Railsを学習することは、論文を終えるまでは選択肢ではないでしょう。)履歴書をより明確にするために履歴書を調整できますか?調整する必要がありますか?Railsを知らないことを電話で丁寧に伝える必要がありますか? ちなみに、私の履歴書の関連部分は単に言っています: スキル: プログラミング言語: C、C ++、Java、Scala、Ruby、LaTeX データベース: MySQL、XML、XPath また、Rails開発者と混同されない可能性のある他のいくつかのスキル領域をリストします。

4
APIを作成するとき、小さな関数と多くの呼び出し、またはいくつかの呼び出しと大きな関数に固執する必要がありますか?
私が管理しているRailsプラットフォームがあります。その上に構築された多くの異なるWebアプリケーションがあります。ただし、現在、クライアントは、ユーザーがサイトにアクセスできるようにするためにAPIを要求していますが、自動化されたタスクの一部を利用しています。 このプラットフォームは、保険アプリケーションを構築するために使用され、オンラインでの購入を可能にし、保険契約に関連するドキュメントをダウンロードする方法を提供します。 APIを構築するときの私の質問は次のとおりです。 私は多くのことをしなければならない場合は、のようなvalidate、作成user、user profileおよびpolicy、ほとんど同時に。4つの別々のAPI呼び出しを行い、クライアントに4つの呼び出しをビルドさせる必要があります。または、多くのパラメータを除いて、クライアントを検証し、これらの3つすべてを同時に作成し、クライアントの物事を単純化する1つの呼び出しが必要ですか? この場合、クライアントは必要な情報をすべて同時に取得するため、アプリケーションに自然なフローがあり、一時停止してプラットフォームにAPI呼び出しを行うことができないようです。 以前は多くのAPIを使用してクライアント側にいたことがありますが、私の直感は、クライアントにとってできるだけ単純にし、1回だけ呼び出しを行うことです。ただしfunctions、これによりAPI がかなり大きくなり、私もどちらのファンでもありません。 私はこれに取り組むことをどのように提案しますか? 注として、私はクライアント側で複雑なAPIを実装する能力にあまり自信がありません。

8
Ruby on Railsのマイナス面と注意事項[終了]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 5年前に閉鎖されました。 これはRoRバッシングのオープニングガンビットではありません-正直です! 私はRubyとRailsフレームワークを学んでいます。一見したところ、かなりクールで、PHPに比べて素晴らしい経験に思えます。(実際、C#と.NETでの幸せな日々を思い出させてくれます。) しかし、これに入ると、私はこのフレームワークまたは言語の経験がなく、興味があります-現在の欠点や、あなたが始めたときに知っていたかったことは何ですか? (これはコミュニティwikiにすべきでしょうか?)

2
大規模なRuby on Railsアプリケーション(月間2,500万人のユーザー)がいるため、経営陣はNode.jsで書き直すことにしました。
次の場合に教えてください: Node.jsを使用するとサイトが高速になります! Node.jsはより少ないサーバーリソースを消費するため、コストを節約できます! Node.jsにより生産性が向上します! Node.jsは、クライアント側とサーバー側のJavaScriptコードを共有できることを意味します。 明確にするために、フロントエンドサーバーを書き換えています。これは、既存のRuby on RailsアプリケーションとAPIとして対話します。その間、Ruby on Railsアプリケーションをサービスにリファクタリングします。 既存のアーキテクチャの詳細: HTMLパーシャルキャッシュ用のMemcached セッション用のRedis、および構造化されたデータキャッシング MySQLシングルマスター、マルチスレーブ 多数の書き込みを受け入れる1つの大きなテーブルがあります(ポーリングを想像してください) それ以外の場合はほとんど読み取ります。 一部のメタデータ用のMongoDB Ruby on Rails 3.0 nginxとUnicorn

7
経験豊富なRuby on Rails開発者は足場を使用しますか?
Ruby on Railsチュートリアルで、経験豊富な開発者はMVCを自分で接続するコードを書くのが好きなので、scaffoldingを使用しないことを示唆するものを読みました。 別の場所で、私は足場を使用することをお勧めします。それは、コードを見てやり取りする他の人があなたが何をしているのか理解できるように、慣習に固執するのに役立つからです。 Ruby on Railsは初めてですが、MVCやWebアプリケーションは初めてではありません。一般に、scaffoldingの慣習に固執してガイドしてもらうべきでしょうか?

5
いつ継承を使用するか、「ブール値フィールドのみ」を使用するか?
Railsアプリケーションでは、通知を追加しています。これらの一部は次のとおりblockingです。リソースに関する情報が欠落しているため、追加されたリソースの進行を停止します。 他の通知は単純な通知であり、情報のみを提供します。 今日、私たちのチームの別のプログラマーと話し合いました。次のような継承構造を作成しました。 しかし、彼は、blocking各通知にブール値を返すメソッドとして追加し、通知親クラス内でブロックしているサブクラスのリストを指定したいだけです。 これらのアプローチの違いはそれほど大きくありません。私のアプローチでは、このリストを指定する必要はなく、ルートクラスをよりクリーンに保ちます。一方、Notification::Blocking現在発生している特別なロジックもそれほど大きくありません。 この問題には、どのような抽象化がより適していますか?

10
Ruby on Railsは急な学習曲線を持っているはずですか、それとも私だけですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 6年前に閉鎖されました。 私は独学のプログラマーです。私は10月からさまざまな強度でRoRを学習しています(一日中、場合によっては数週間何もしません)。それまではJavaだけを知っていましたが、かなりよく知っていました。RoRについての誇大広告や、それがどのようにあなたを幸せにし、生産的にするのか、という話を聞いたことがあります。私はアジャイルの本からそれを学びました。そして、私がJavaScriptとCSSを知らず、データベースとHTMLを少ししか理解していないことに関係しているのではないかと疑っています。しかし、明らかに、アジャイルの本でプロジェクトを完了するのに他の人よりもはるかに長い時間がかかり、今でもあまり覚えていません。Railsには、シンボルを使用するタイミングと使用しないタイミング、動的メソッドがどのように呼び出されるかなど、私が取得できないように見えるものがいくつかあります。 最近、私は小さなRailsの割り当てを受け、そこでインターフェイスに小さな変更を加えるように求められました。約25時間かかりました。コードの理解にはある程度の進歩はありましたが、どうすればよいかわかりません。コンテキストを提供するために提供しなければならないコードが非常に多いため、Stack Overflowを要求することさえできません。 私の質問はタイトルにあります:RoRは学ぶのに長い時間がかかるはずですか、それとも私はただ遅いですか?間違った本から学んでいるということはありますか?私の学習スタイルは、それが理にかなっている場合、何も理解しないか、すべてを理解するようなものです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.