アカウント名:
パスワード:
PHPフレームワークの衰退が激しいのがリスク。長く使いたいなら公式のZend Frameworkで。言語自体はアレであるものの、PHPのバージョンアップに対する適切なメンテが出来ればそれなりに使いやすい。
RubyフレームワークがRoR一択なので悩まなくてもいいが、JavaScriptを多用したりModelの一気通貫が効かないと苦しくなってくる。DSLとシンボルの黒魔術をうまく扱える技術者が確保できるなら使いやすい。
JavaフレームワークはJSFがあの有様である現状、Spring MVC / Play frameworkの二択。SpringはVMwareに切り捨てられなければそう死ぬことは無い。目下Oracleが一番のリスク。
JavaScript現状ではNodeを使うことになるが、MVCフレームワークはまだ決定打がない状況。スケールさせたいAPI層をNodeで、と割り切って使う分には良い選択肢。
C#MVC、API、リアルタイムWebがそれぞれ公式でサポートされる安定感が欲しい場合は良い選択肢。他と比べて開発環境のコストが高いので、人員を増やしたときのことも考えないと死ぬ。
Scala技術者の確保に難儀するが、typesafeがPlay frameworkを推しているのが安心の元。スケーラビリティが必要なときは良い候補ではあるものの、まだ言語自体にバッドノウハウが必要な箇所もあるのが注意点。
メジャーどころだとこんな感じか。
最近 Docker のお陰か、Go の使用例も少しずつ増えてますね。Dropbox など Python からの移行組も多いようです。
ASPぇ・・・
いちおう、ASP→ASP.Net→ASP.Net MVCと続いているが、パラダイムが変わり過ぎで何ともはや。(そして混在も可能と言うのが……ウガァァ)
ASP.NET WebFormsなんてものは無かった。いいね?
ASP.NET MVCは全てのASP.NET WebFormを置き換えるものではない外部から仕事をもらうという意味では厳しいだろうが業務系なんかで使われ続けるケースもありそう
それはLightSwitch使いなよ
LightSwitchは無いわ。Silverlightだもん。
DB設計に依存しすぎるLightSwitchは使えないよ
モバイル出力ならjQuery Mobileだぞ
そりゃDB設計さえしっかりしてれば良い感じにCRUDアプリが作れるってシロモノだからなそれで無理ならMVC使えって話
逆だろどうでも良い画面ならそれこそMVCのテンプレートでやった方がシンプルで楽だし、後から調整したい時も小回りが効くCRUDっぽいものならLightSwitchとかDynamic Dataを使えば良いWebFormsの良いところなんて、DataGridが使えるところぐらいだよむしろ最近はMS自体がWebFormsを黒歴史扱いし始めて採用すること自体がリスクになってるわ
いやいや、学習コスト無視しちゃいかんでしょ。WebFormsは普通のWindowsFormsと*ほぼ*同じ様に書けて、あまりWebアプリって事を意識せずにフレームワークが良きに計らって書けるのがメリットで、学習コストが低い。(もちろん、強調した通り*ほぼ*だけど)
そこら辺のWebやった事無いC#プログラマにいきなりASP.NET MVCやらせたら面食らうと思うよ?というか、ASP.NET MVC? 何それ? って人もまだまだ沢山います。しかも、超大手で。
#個人的には、ASP.NET MVCをきちんと覚えればWebFormsを使う意味はあんまりない、というのには同意するけれども。#あと、ASP.NET MVCはEntityFrameworkとも密接過ぎて、そこら辺でも面食らうと思う。#アホは未だにLINQすら使わないから。
若人はLinQを使いますねLISP(三宮しのぶのほう)はジイジ専用
Windows Formも要らんよ、WPFでWMMVするし。っていう人がもっと増えたら面白いんだが、まあそれこそ5年は掛かりそうだ。
WMMVってなんだorzMVVCとWM(WebMatrix)が脳内で謎の融合をした…
> #あと、ASP.NET MVCはEntityFrameworkとも密接過ぎて、そこら辺でも面食らうと思う。これは何かの間違いじゃ?デフォルトテンプレートは確かにEF使ってるけど、RailsとAcriveRedordsみたいな関係の縛りは無いよ。実際、みんな大好きStackOverflowはASP.NET MVCとDapper Micro-ORMの組み合わせだし。
結局MVVMとは関係ない話なのだろうか。
あぁぁ…ドツボだ… これはマズイかな……
その通りです。
実はASP.NET MVCはフルスタックのMVCフレームワークではありません。VとCのみの機能に絞られています。Mについては、フレームワークとしてのサポートは有りません。ADO.NETのCommandとDataReaderを直接使おうがdapper dot netを使おうがS2Dao.NETを使おうがLightspeed Ormを使おうが、全くの自由です。
スキャフォールディング周りでEntity Frameworkに特化したサポートがあるように思われるかもしれませんが、これはあくまでも"Visual Studioというツールがサポートしているだけ"、と理解するのが良いのではないかと思います。(とはいえMSから出てくるサンプルやチュートリアルはEntity Frameworkを利用していることが殆どなので、全く知らないと不便なこともあると思いますが)
ASP.NET Web Pagesというフレームワークもあるんじゃよhttp://www.slideshare.net/kiyokura/aspnet-web-pages [slideshare.net]
#Classic ASPで新規に作るくらいならASP.NET Web Pagesで作ってくださいマジで
WWIVと空目したのは私だけではないはず
Clojure・・・
C#は別に開発環境が高くなるとは限らない気がする。無料版でも商用利用できるんだし。超大規模プロジェクトやるならともかく、中小程度のプロジェクトじゃ無料版ですら十分。事実それでやってる所も沢山ある。
Express EditionじゃReSharper使えないし、TFSも5人までだからなぁ以前に比べてればMSTest使えるようになったり、良くはなっているけどまだ弱い
Express Editionで心許ないっちゃないが、金がないなら必要十分だろ。主要メンバだけ上位版持たせとけばいいよ。
死ぬ理由がとてもよくわかった
PGって給料安いって騒ぐくせにPGが作るものに金払うの嫌うんだなあそりゃ薄給になるわ
好き嫌いの問題じゃ無いし、誰が作ったからなんて判断をおいそれと持ち込めない。PGに限定した話でもない。個人のPGなら自腹で自由にできるだろうが、組織業務はそうはいかない。便利で快適な作業環境を有り余るほど揃えられるならその方がいいに決まってるが、予算には常に限りがある。それぞれの状況で上位版が適切なのかどうかという問題を全部一緒くたに片付けるな。
予算を言うなら、便利機能が欠如した無料版による面倒な作業でどれだけ人件費が増えるか計算してみなよ……有料版の値段ぐらいはあっという間にいくよ。それでも有料版を買わないっていうなら、有料版を使いこなせるスキルが社内の誰一人として持たないようななんちゃって開発会社か、あるいは事前に金を払う勇気がなくて将来の負債をずるずる増やすような馬鹿が予算の権限を握る末期的状況ってことだよ
是非とも計算して、具体的な数字として見せて頂きたい。 式の妥当性の根拠も含めて。興味深い。実に、興味深い。
主要メンバにされた方はたまったもんじゃない
Webはデザイナとかも関わってくるのでバージョン管理あんまり使わないんだよね。やつらが使おうとしない、とも言うが。結局は出来上がったのをテスト環境にコピペ、んで本番へみたいなことになる。だからTFSが使えないのは大したデメリットではないしReSharperは確かに便利だがなくても中規模↓ならどうにでもなる。プライベートでは使ってるが、会社になくても若干面倒なぐらいでないと仕事にならないって程でもない。効率という面では落ちるが、それは開発ツールに金かけない会社が馬鹿なだけなので別にどうでもいい。効率よくやってもその分また仕事が回ってきて忙しくなるだけ、しかも給料上げてくれるわけでもない。仕事量が決まっていて、効率よくすればするほど休みが増えるとかなら自腹きってでも買うけどさ。数万程度すぐペイできるし。
>フレームワークがRoR一択なので悩まなくてもいいが、JavaScriptを多用したりModelの一気通貫が効かないと苦しくなってくる。
これ、最近のはてなの記事であったから書いたかもしれんが、JavaScriptを多用すると苦しいのは現行フレームワーク共通ですよ。(ごく一部のとがった奴を除く)あとModelの一気通貫てなんだ?
Railsの問題は、バージョンアップが速すぎることでは。これも多かれ少なかれ他と共通だけどね。
> あとModelの一気通貫てなんだ?Railsメインの人が他のMVC FrameworkのAction MethodでのModelの取り扱い仕様をみて「はぁ?」ってなるアレ。確かにRailsは入力から中の処理までARのModelで貫き通せばRSpecのテストも書きやすくて凄いんだけど、いちいちMassAssignment脆弱性対策でStrongParameters使うのもだりぃし他のFrameworkみたくForm Modelを使わせてよ、みたいなレールを外れたことをするとDHHがカールスバーグの割れた瓶持って殺しに来る。
PHPなんか、セッション変数を「変数名(ハッシュの名前)+値の文字列」の羅列で平文で普通のファイルに置いているじゃ無いですか!
あれをみてぞっとしました。オブジェクトを作るのを知らず、変数名に長めのプレフィックスを付けていましたから、変数名の長さは相当なものになっていました。
スクリプト言語ってそんな物なのでしょうか?
Scala ... まだ言語自体にバッドノウハウが必要な箇所もあるのが注意点。
具体的になんだろう。バッドノウハウは特に必要ないと思うんだけど。
sbtわけわかめ
いやー、あるよバッドノウハウいろいろこれこれこういうコレクションの扱い方は一見わからんけど内部はこうだからこういうのだめよー、みたいなの
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ハッカーとクラッカーの違い。大してないと思います -- あるアレゲ
どれでもまぁ (スコア:5, 参考になる)
PHP
フレームワークの衰退が激しいのがリスク。長く使いたいなら公式のZend Frameworkで。
言語自体はアレであるものの、PHPのバージョンアップに対する適切なメンテが出来ればそれなりに使いやすい。
Ruby
フレームワークがRoR一択なので悩まなくてもいいが、JavaScriptを多用したりModelの一気通貫が効かないと苦しくなってくる。
DSLとシンボルの黒魔術をうまく扱える技術者が確保できるなら使いやすい。
Java
フレームワークはJSFがあの有様である現状、Spring MVC / Play frameworkの二択。
SpringはVMwareに切り捨てられなければそう死ぬことは無い。目下Oracleが一番のリスク。
JavaScript
現状ではNodeを使うことになるが、MVCフレームワークはまだ決定打がない状況。
スケールさせたいAPI層をNodeで、と割り切って使う分には良い選択肢。
C#
MVC、API、リアルタイムWebがそれぞれ公式でサポートされる安定感が欲しい場合は良い選択肢。
他と比べて開発環境のコストが高いので、人員を増やしたときのことも考えないと死ぬ。
Scala
技術者の確保に難儀するが、typesafeがPlay frameworkを推しているのが安心の元。
スケーラビリティが必要なときは良い候補ではあるものの、まだ言語自体にバッドノウハウが必要な箇所もあるのが注意点。
メジャーどころだとこんな感じか。
Re:どれでもまぁ (スコア:4, 参考になる)
何もかもが違うZend Framework2が出たでござる
より洗練されて使いやすくなったとはいえ、このバッサリ感はPHPに通じるものがある気がする…
Re:どれでもまぁ (スコア:1)
最近 Docker のお陰か、Go の使用例も少しずつ増えてますね。
Dropbox など Python からの移行組も多いようです。
Re: (スコア:0)
ASPぇ・・・
Re:どれでもまぁ (スコア:1)
いちおう、ASP→ASP.Net→ASP.Net MVCと続いているが、
パラダイムが変わり過ぎで何ともはや。
(そして混在も可能と言うのが……ウガァァ)
Re: (スコア:0)
ASP.NET WebFormsなんてものは無かった。いいね?
Re: (スコア:0)
ASP.NET MVCは全てのASP.NET WebFormを置き換えるものではない
外部から仕事をもらうという意味では厳しいだろうが業務系なんかで使われ続けるケースもありそう
Re: (スコア:0)
それはLightSwitch使いなよ
Re: (スコア:0)
LightSwitchは無いわ。Silverlightだもん。
Re: (スコア:0)
DB設計に依存しすぎるLightSwitchは使えないよ
Re: (スコア:0)
モバイル出力ならjQuery Mobileだぞ
Re: (スコア:0)
そりゃDB設計さえしっかりしてれば良い感じにCRUDアプリが作れるってシロモノだからな
それで無理ならMVC使えって話
Re: (スコア:0)
これってどういうこと?DataGridとかコントロールの利便性の事を言ってる?
Re: (スコア:0)
ぶっちゃけ、どうでも良いような画面一つとかのフォームなら、WebFormで十分すぎる。
Re:どれでもまぁ (スコア:1)
逆だろ
どうでも良い画面ならそれこそMVCのテンプレートでやった方がシンプルで楽だし、後から調整したい時も小回りが効く
CRUDっぽいものならLightSwitchとかDynamic Dataを使えば良い
WebFormsの良いところなんて、DataGridが使えるところぐらいだよ
むしろ最近はMS自体がWebFormsを黒歴史扱いし始めて採用すること自体がリスクになってるわ
Re: (スコア:0)
いやいや、学習コスト無視しちゃいかんでしょ。
WebFormsは普通のWindowsFormsと*ほぼ*同じ様に書けて、あまりWebアプリって事を意識せずにフレームワークが良きに計らって書けるのがメリットで、学習コストが低い。
(もちろん、強調した通り*ほぼ*だけど)
そこら辺のWebやった事無いC#プログラマにいきなりASP.NET MVCやらせたら面食らうと思うよ?
というか、ASP.NET MVC? 何それ? って人もまだまだ沢山います。
しかも、超大手で。
#個人的には、ASP.NET MVCをきちんと覚えればWebFormsを使う意味はあんまりない、というのには同意するけれども。
#あと、ASP.NET MVCはEntityFrameworkとも密接過ぎて、そこら辺でも面食らうと思う。
#アホは未だにLINQすら使わないから。
Re: (スコア:0)
若人はLinQを使いますね
LISP(三宮しのぶのほう)はジイジ専用
Re:どれでもまぁ (スコア:1)
Windows Formも要らんよ、WPFでWMMVするし。
っていう人がもっと増えたら面白いんだが、まあそれこそ5年は掛かりそうだ。
しまった (スコア:1)
WMMVってなんだorz
MVVCとWM(WebMatrix)が脳内で謎の融合をした…
Re:どれでもまぁ (スコア:1)
> #あと、ASP.NET MVCはEntityFrameworkとも密接過ぎて、そこら辺でも面食らうと思う。
これは何かの間違いじゃ?
デフォルトテンプレートは確かにEF使ってるけど、RailsとAcriveRedordsみたいな関係の縛りは無いよ。
実際、みんな大好きStackOverflowはASP.NET MVCとDapper Micro-ORMの組み合わせだし。
Re: (スコア:0)
結局MVVMとは関係ない話なのだろうか。
Re: (スコア:0)
そういう人がかけてしまうこと自体、利点なんだけど、欠点でもあるんだよ。
というかレガシーASP(最近はClassic ASPというみたいだけど)が存在して、HTMLとVBで仲良くかけてたり、DCOM絡めてわりとロジックと表示を分離できてるところもあったので、WebFormsで振り出しより手前に戻ってしまった感はある。
プロジェクト作って画面開いてデザイナでボタン置いてボタンダブルクリックして、Labelに Hello Worldとかたしかに同じ様にできるけど、
Page_LoadとかIsPostbackとかViewStateとか結局面食らう事になる(上に他のWeb開発言語とも異質すぎるという)。書きっぷりから見てそのあたりは知っていて書いていると思うけど、
WebFormsやるぐらいなら、ModelつくらずViewBagに詰め込んで表示するASP.NET MVCの方がまだましな気がするなぁ。それでもclassic ASPよりましになりそうな気がするし。
Re:しまった (スコア:1)
あぁぁ…ドツボだ… これはマズイかな……
Re: (スコア:0)
その通りです。
実はASP.NET MVCはフルスタックのMVCフレームワークではありません。
VとCのみの機能に絞られています。Mについては、フレームワークとしてのサポートは有りません。
ADO.NETのCommandとDataReaderを直接使おうがdapper dot netを使おうがS2Dao.NETを使おうがLightspeed Ormを使おうが、全くの自由です。
スキャフォールディング周りでEntity Frameworkに特化したサポートがあるように思われるかもしれませんが、これはあくまでも"Visual Studioというツールがサポートしているだけ"、と理解するのが良いのではないかと思います。
(とはいえMSから出てくるサンプルやチュートリアルはEntity Frameworkを利用していることが殆どなので、全く知らないと不便なこともあると思いますが)
Re: (スコア:0)
ASP.NET Web Pagesというフレームワークもあるんじゃよ
http://www.slideshare.net/kiyokura/aspnet-web-pages [slideshare.net]
#Classic ASPで新規に作るくらいならASP.NET Web Pagesで作ってくださいマジで
Re: (スコア:0)
WWIVと空目したのは私だけではないはず
Re: (スコア:0)
Clojure・・・
Re: (スコア:0)
Re: (スコア:0)
C#は別に開発環境が高くなるとは限らない気がする。
無料版でも商用利用できるんだし。
超大規模プロジェクトやるならともかく、中小程度のプロジェクトじゃ無料版ですら十分。
事実それでやってる所も沢山ある。
Re: (スコア:0)
Express EditionじゃReSharper使えないし、TFSも5人までだからなぁ
以前に比べてればMSTest使えるようになったり、良くはなっているけどまだ弱い
Re: (スコア:0)
Express Editionで心許ないっちゃないが、金がないなら必要十分だろ。
主要メンバだけ上位版持たせとけばいいよ。
Re: (スコア:0)
死ぬ理由がとてもよくわかった
Re: (スコア:0)
PGって給料安いって騒ぐくせに
PGが作るものに金払うの嫌うんだなあ
そりゃ薄給になるわ
Re: (スコア:0)
好き嫌いの問題じゃ無いし、誰が作ったからなんて判断をおいそれと持ち込めない。PGに限定した話でもない。
個人のPGなら自腹で自由にできるだろうが、組織業務はそうはいかない。
便利で快適な作業環境を有り余るほど揃えられるならその方がいいに決まってるが、予算には常に限りがある。
それぞれの状況で上位版が適切なのかどうかという問題を全部一緒くたに片付けるな。
Re: (スコア:0)
予算を言うなら、便利機能が欠如した無料版による面倒な作業でどれだけ人件費が増えるか計算してみなよ……
有料版の値段ぐらいはあっという間にいくよ。
それでも有料版を買わないっていうなら、
有料版を使いこなせるスキルが社内の誰一人として持たないようななんちゃって開発会社か、
あるいは事前に金を払う勇気がなくて将来の負債をずるずる増やすような馬鹿が予算の権限を握る末期的状況ってことだよ
Re: (スコア:0)
是非とも計算して、具体的な数字として見せて頂きたい。 式の妥当性の根拠も含めて。
興味深い。
実に、興味深い。
Re: (スコア:0)
主要メンバにされた方はたまったもんじゃない
Re: (スコア:0)
Webはデザイナとかも関わってくるのでバージョン管理あんまり使わないんだよね。
やつらが使おうとしない、とも言うが。
結局は出来上がったのをテスト環境にコピペ、んで本番へみたいなことになる。
だからTFSが使えないのは大したデメリットではないし
ReSharperは確かに便利だがなくても中規模↓ならどうにでもなる。
プライベートでは使ってるが、会社になくても若干面倒なぐらいでないと仕事にならないって程でもない。
効率という面では落ちるが、それは開発ツールに金かけない会社が馬鹿なだけなので別にどうでもいい。
効率よくやってもその分また仕事が回ってきて忙しくなるだけ、しかも給料上げてくれるわけでもない。
仕事量が決まっていて、効率よくすればするほど休みが増えるとかなら自腹きってでも買うけどさ。
数万程度すぐペイできるし。
Re: (スコア:0)
>フレームワークがRoR一択なので悩まなくてもいいが、JavaScriptを多用したりModelの一気通貫が効かないと苦しくなってくる。
これ、最近のはてなの記事であったから書いたかもしれんが、JavaScriptを多用すると苦しいのは現行フレームワーク共通ですよ。
(ごく一部のとがった奴を除く)
あとModelの一気通貫てなんだ?
Railsの問題は、バージョンアップが速すぎることでは。これも多かれ少なかれ他と共通だけどね。
Re:どれでもまぁ (スコア:2, 興味深い)
> あとModelの一気通貫てなんだ?
Railsメインの人が他のMVC FrameworkのAction MethodでのModelの取り扱い仕様をみて「はぁ?」ってなるアレ。
確かにRailsは入力から中の処理までARのModelで貫き通せばRSpecのテストも書きやすくて凄いんだけど、
いちいちMassAssignment脆弱性対策でStrongParameters使うのもだりぃし他のFrameworkみたくForm Modelを使わせてよ、
みたいなレールを外れたことをするとDHHがカールスバーグの割れた瓶持って殺しに来る。
Re: (スコア:0)
PHPなんか、セッション変数を「変数名(ハッシュの名前)+値の文字列」の羅列で平文で
普通のファイルに置いているじゃ無いですか!
あれをみてぞっとしました。オブジェクトを作るのを知らず、変数名に長めのプレフィックス
を付けていましたから、変数名の長さは相当なものになっていました。
スクリプト言語ってそんな物なのでしょうか?
Re:どれでもまぁ (スコア:1)
アプリ経由以外でWebサーバーが攻略されるのは自身の問題ではないのでDB接続情報は平文でもっていたりするわけだし。
セッション変数なんかよりそっちのほうがぞっとしない?
クライアントアプリだと悩むところもWebサーバーと分離されている部分で楽できてる。別途通信の問題とか別の問題を抱えるけどね。
Re: (スコア:0)
具体的になんだろう。バッドノウハウは特に必要ないと思うんだけど。
Re: (スコア:0)
sbtわけわかめ
Re: (スコア:0)
いやー、あるよバッドノウハウいろいろ
これこれこういうコレクションの扱い方は一見わからんけど内部はこうだからこういうのだめよー、みたいなの