2009-10-18 10 views
5

私は仕事中にPython/Djangoで作業しているので、在宅プロジェクトが必要です。私は何か新しいことを学びたいので、私はJavaをチェックすることを考えていました。asm/C/Python/Perl/Lisp/Schemeプログラマーが新しいことを学ぶために

Java Webアプリケーションを展開するための最も優れたWebフレームワークは何ですか? 私がレール上でルビーをチェックしていない唯一の理由は、ORMと他の部分がDjangoとどれほど似ているからです。

また、誰かが海辺/スモールトークを調べるべきだと思いますか?なぜ私はすべきか誰も説明できますか?

ハスケルは、誰かがそれについて良い議論をすることができるなら、私が検討するものです。私はそれに沿って行くWebフレームワークとデータベースアクセスライブラリが必要になります。

私がx86/asm経由でスタックのパラダイムにあまり慣れていないと、私はfactor/forthを考慮したいと思います。私はこれにも反論を聞いて喜んでいるだろう。

も参照してください:http://www.reddit.com/r/programming/comments/9v3uf/asm_c_python_perl_lisp_scheme_programmer_looking/

+0

コミュニティWikiにする必要があります。 – Brian

+0

リンクしてください:http://www.reddit.com/r/programming/comments/9v3uf/asm_c_python_perl_lisp_scheme_programmer_looking/ – Brian

+0

@Brian Okie dokieもご覧ください。あなたは私にそれをリンクできますか? – callen

答えて

4

あなたはウェブプログラミングのように聞こえるので、smalltalk/seasideは素晴らしいものです。 IMO誰もがそれを使用しない場合でもsmalltalkを学ぶべきであり、海辺はあなたが慣れ親しんでいるものとはまったく異なるWebフレームワークです。海岸の哲学は基本的に "地獄にREST"と言っている間、Django、フェースインスタンスは、すべてRESTについてです。

イメージベースの環境でコード化したことがないとしたら、それは自然な、魔法のように見えるものです。 smalltalkに由来する多くのIDE機能は、ファイルベースの言語IDEで実装されていますが、同じ機能が小さなトークに単純に属しているかのような不自然なグラフトのように感じられます。

Pharoをチェックしてください。メニューバーがないことに慣れて、それがあなたをつかまえていないかどうかを確認するのに十分な時間を与えてください。

+0

私は実際にシステムプログラミングの背景から来て、ウェブプログラミングはちょうど私の日仕事です。 この提案は、エイリアンの経験になるため、お試しください。 – callen

14

スキル、なぜあなたは大工や塗装、またはとはほとんどを持っている他のスキルの数百人のいずれかのように、あなたの快適ゾーンの外にもっと何かを学ばないのその範囲を使用してフィールド。

ある時点では、すべての言語が同じで、別の言語を学習することで恩恵を受けることはほとんどありません。

しかし、まったく異なるものであれば、はるかに豊富な個人になります。私はどちらかにはそれほど良くないとはいえ、絵とゴルフのように、私は自分のハンディキャップが何であるかをゴルフのインストラクターに尋ねたとき、ボールをまっすぐに打てないということを言った:-)

私が見つけたのはです。は本当に新しい経験であるので、慣れていないものをやっています。別のコンピュータスキルを学ぶのはしばらくすると簡単なことなので、その喜びは軽減されます。

私は間違ってはいませんが、私は現場での開発に追いついていますが、ほとんどの場合、私がやる仕事のほとんどは安定した技術であるため、ほとんど新しい技術は私のキャリアに何も与えません。あなたは別の状況にいるかもしれません。

+1

私は一度ペイントしました。私はちょっと違ったスタイルの古いDelarocheのコピーを90時間連続して作りました。 つまり、処理がうまく終了しませんでした。 木工?私はNYCにいる。起きていません。 私はプログラミングをより良くしたい、それは私の人生に大きな影響を与える唯一のものです。 私が研究/練習できる潜在的な非プログラミング関連の問題に遭遇した場合、あなたのアドバイスのために真剣に検討するつもりですが、私はそのようなことを追求するつもりはありません。 – callen

+2

"ある時点では、すべての言語が同じです。"私たちはその点から長い道のりです。 – itowlson

+1

私は彼が何を意味するかは、あなたの意志に愚かなコンピュータを試して鞭を打つことができる方法がたくさんあることだと思います。 –

0

Java Springフレームワークはどうなっていますか?

http://www.springsource.org/

それともNHibernateは?あなたの一日の最高の終わりに

http://en.wikipedia.org/wiki/NHibernate

。私は多くのうち2つだけを挙げました。私が静的な言語を教授しているとき、私は動的なスクリプト言語を学びます。およびその逆。

また、私はまったく異なった、あるいは自分の世界の外で何かを学ぼうとします... PowershellやKornシェルやActionScriptでも可能です。

+0

PowershellまたはKornシェルは、私が探している方法で私に挑戦しないだろうし、私が持っている副業のアイデアには当てはまらないだろう。 – callen

+0

また@NHibernate、私は.NETの世界から抜け出しました。 – callen

0

Java Webアプリケーションを展開するための最も優れたWebフレームワークは何ですか?

他のWebフレームワークよりも尊重されている単一のWebフレームワークはありません。Struts2、Spring MVC、StripesまたはWicket(イベントベース)はすべて良い候補です(私は個人的にStripesが好きです)。しかし、永続性(HibernateまたはJPA)と接着剤(Spring)のためにもう少し必要となります。

Grails(Groovy on Rails)も良い選択肢です。

また、誰かが海辺/スモールトークを調べるべきだと思いますか?なぜ私はすべきか誰も説明できますか?

まあ、私はSmalltalkを習うことはできませんが、Javaのような穏やかな言語でSmalltalkを選ぶ良い理由はないと思います。ツーリングに関しては、VisualAge for Smalltalk以外は何も知らないが、個人的には遠く離れている。

ハスケルは、誰かがそれについて良い議論をすることができると考えているものです。 [...]

私はそれのために正しい男のように見えます。

私がx86/asm経由でスタックのパラダイムにあまり慣れていない場合、私はfactor/forthを考慮したいと思います。私はこれにも反論を聞いて喜んでいるだろう。上記と同じ

+0

JavaのWebアプリケーションは一般的に共有状態か、もっとDjango /レールに似ていますか? リストしたさまざまなWebフレームワークの違いは何ですか? – callen

2

あなたのリストからは、完全にオブジェクト指向の言語だと言えます。

Rubyをチェックアウトできますが、クロージャ、高次関数、プロトタイプ継承のサポートのような興味深いことがたくさんあるので、JavaScriptをおすすめします。非常に人気があります。すでにLispやスキームを知っていれば、それはあなたのためにできるだけ多くを傷つけないかもしれないが

+0

リストが完成していない、私はRubyでコード化しました。 RubyはPythonが完全にオブジェクト指向ではないのですか? 私はPythonでクロージャを定期的に使用しています。 http://ivan.truemesh.com/archives/000392.html あまりにも先にJavascriptを使用していますが、気にしないでください。 私はいくつかの異なる技術に向かって会話を指導することによって触れた世界のすべてを一覧表示/ nixすることを避けようとしていました。 あなたはこれを無視することを選択しました。それは私を悲しくします。 : – callen

+0

命令型、機能型、オブジェクト指向のプログラミングをすでに理解していれば、別の言語で計算を表現する新しい方法を見つけるつもりはないと思います。マルチコアマシンでの並行性などの厳しい問題のうち、JVMとCompojureのWebフレームワークでClojureを見てみることをお勧めします。 (しかし、そのことについてはHaskellでもSmalltalkでもありません) –

6

Haskellは、心・ベンダーとして、これらの日はかなり人気があります。純粋に機能的なので、何にも副作用はありません。テキストを印刷したり、特定の順序が必要な他のことをするには、モナドを使用する必要があります。これは完全に怠惰に評価されているので、Haskellで無限リストを作成し、メモリ消費を心配する必要はありません。

Haskell Platformは完全には完全ではないかもしれないが、Haskellのためのライブラリのポータブルセットであることを意図しています。 list of packagesには、CGI処理と(X)HTML生成のためのものが含まれています。

+0

つまり、Webフレームワークはありません。それはリストから外して、これをサイドビジネスアイデアに適用します。 – callen

+0

私は決して " Webフレームワークはありません」と私は比較的成熟したWebツールのシンプルなバンドルを提供しています。興味のある他の図書館のリストが必要な場合は、ここをクリックしてください(http://www.haskell.org/haskellwiki/RPC)。 。 –

3

私はJavaをお勧めします。私が仕事を探していたときに、Java開発者のためのオープンソースがたくさんあることに気付きました。そこには多くのことがあります。いつかJavaスキルを使う機会があります。

そして、あなたはScalaを試してみるべきです。 Scalaは、非常にスケーラブルなプログラムを作成するために関数型プログラミングを使用するPython-ish言語の一種です。 Pythonとは異なり、Scalaでは型の宣言が必要です。 ScalaはJava仮想マシン上で実行されるため、Javaショップでも使用できます。

http://www.scala-lang.org/

これらは、私は、自分自身を学ぶつもり次の二つの言語であるため、私はあなたにこの答えを与えていることが可能です。

あなたは、おそらくものJavascriptで遊んで少しの時間を費やす必要があります。Javascriptは「ステルス・リスプ」であることを意図していました。

http://www.crockford.com/javascript/javascript.html

http://bc.tech.coop/blog/030920.html

そして一体、それをいくつかの楽しみを持っています。ゲームや何かを書く!

0

私はあなたの履歴書にLispとSchemeを持っていても、Lisp(いくつかの関連する方言)をマスターすることを提案していましたが、本当に深く学ぶ価値があるかもしれません。理由は、http://www.paulgraham.com/avg.htmlを参照してください。

他にもPrologが関心を引くかもしれません。これはSQLに関連していますが、組織化された一連のデータテーブルと通信するのではなく、プログラミングのためのものです。

ウェブテクノロジをターゲットにしたい場合は、私はJavaでの経験があります。ここでは、最新のJava Server Faces(JSF)を使用してAjaxを使用してページを更新できます。また、Google Web Toolkitは非常に豊富なコンポーネントベースのWebページを可能にします。これらは、あなたが十分なJavaを学び、十分楽しんでもらえるくらいジューシーなものかもしれません:)

+0

私は "私の上にLispを持っていません私はSICPを二回、グラハムのLispの本を一回読んだ。私はそれがちょうどいいことを理解する。私は多くのことを学びました。移動する時間。私は本当に人々が予期しないときにそれを好きではありません。 – callen

+0

その場合、私はiPhoneの開発をお勧めします... –

2

私はそれに伴いウェブフレームワークとデータベースアクセスライブラリが必要です。

すべてのプログラミングがWebフレームワークとSQLデータベースに基づいている場合は、言語を切り替えるだけで、異なる構文で同じ問題が解決されます。

Prolog、概念グラフ、RDF、Linda/JavaSpaces、XQuery、HDF5、ASN.1、または別のネットワークモデルを使用して何かを構築する - XMPP pub-sub、SNMP、ゼロ設定メッシュZigBeeの群れがArduinosを有効にしました。

OzIo、またはErlang/OTPなどの言語を参照してください。これらは主にモノリシックではなく、分散しています。

0

あなたのリストにC#と.NETプラットフォームが表示されません。そして、私は誰もまだそれを言及して驚いています。

私はC#で5年間働いています。私はいくつかのJavaコードを見てきましたが、決してコード化していません。私はJavaがC#にいくぶん似ていると信じています。あなたが1つに堪能であれば、もう1つを選ぶことができるのは2,3日です。

独自の言語/コンパイラを作成することが考えられます。私が作成したい(または作成したものを見たい)のは、オブジェクト指向の構文を持つアセンブリ言語レベルのコンパイラで、これはPythonに非常に似ていますが、型付きの言語にします。 db、dw、ddという基本バイナリ型から始めて、これらに追加することができます。関数とメソッドは、高水準コードで自由に混在したアセンブリ言語を持つことができます。さて、それは楽しいプロジェクトだろうと私は思いますか?

+0

3年間の.NET開発者は、最近Python/Djangoの仕事のために放棄しました。いいえ、結構です。 自分自身の言語/コンパイラを実装することは、私にとってもっと興味深い見通しです。型付けされたオブジェクト指向のasm?私はそれがどのように機能するのか分かりません。あなたが構文を整理すれば、それは何かのようなものになるだろうと思う。 (スタックベース、動的に型指定された) ここで見てください:http://factorcode.org/ 興味深いことですが、私はむしろ、Cプログラミング言語ala oocのスーパーセット/クリーンアップを書いています。多分並行性のための不変性を持つ何か。 私はそれについて熟考しています。 – callen

0

間違いなくHaskellまたはSmalltalkまたはForthを試してください。

私はSmalltalkが最も有用であると言いますが、Forthはx86のasmとCの間違いから離れさせるでしょう。ハードウェアの近くにコードを書く方法は複数あります。

0

なぜOCamlを試してみませんか?そして、もしあなたが(悲しいことに).NETの世界に戻ってきたら、あなたはあなたの手荷物にF#の知識を持っています。

関連する問題