ソフトウェア工学

システム開発ライフサイクル内で働く専門家、学者、学生向けのQ&A

1
Erlangは本当にアクターモデル言語ですか?
私はこの記事を読んでいた: http://www.doc.ic.ac.uk/~nd/surprise_97/journal/vol2/pjm2/ そして、それはそれについて言及しています: ...アクターモデルでは整数もアクターとして表されます... ウィキペディアは以下を確認します: アクターモデルは、すべてがアクターであるという哲学を採用しています。 Erlangには多くのデータ型があり、私が知る限り、それらの型はアクターではありません。 たとえば、Javaは特定の機能的なプログラミング機能が欠けているという理由だけでJavaは機能言語ではないと言う人がいるという意味で、Erlangはアクターモデル言語ではないということではありませんか? PS:拡張により、Akkaは間違いなくアクターモデルではないことを意味します。これは、ホスト言語からの非アクターデータ型に加えて、ホスト言語機能を介してアクターの継承を可能にするためです。

2
Winformアプリケーションのロジックからビューをどのように分離しますか?
ビューをロジックから分離するMVCのようなパターンがあることは知っていますが、Winformアプリケーションでそれらがどれほど一般的かはわかりません。 C#Winformアプリケーションの場合、a Formから始めてUIコンポーネントを徐々に追加し、コンポーネントのイベントに対して(click、textchanged...)関数を呼び出すか、ロジックを直接記述します! 私はそれが悪い習慣であることは知っていますが、Visual Studioでそのようなプロジェクト(テンプレート、フレームワーク、開始点)を開始する最善の方法は何なのかわかりません。MVCが唯一の解決策ですか?私はどんなプロジェクトでもそれをすべきですか?! 開始するためのガイドラインまたは軽量フレームワークを受け取りたいです。
18 c#  mvc  winforms 

2
ユーザークレームをJWTトークンに保存する必要がありますか?
HTTPヘッダーでJWTトークンを使用して、リソースサーバーへのリクエストを認証しています。リソースサーバーと認証サーバーは、Azureの2つの独立したワーカーロールです。 トークンにクレームを保存するか、他の方法で要求/応答に添付するかについて、思いを固めることはできません。クレームリストは、サーバー上のデータへのアクセスだけでなく、クライアント側のUI要素のレンダリングにも影響します。このため、サーバーで受信したクレームが本物であり、リクエストが処理される前に検証されていることを確認したいと思います。 クレームの例:CanEditProductList、CanEditShopDescription、CanReadUserDetails。 JWTトークンを使用したい理由は次のとおりです。 クレームのクライアント側編集に対するより良い保護(クレームリストのハッキング)。 リクエストごとにクレームを調べる必要はありません。 JWTトークンを使用したくない理由: 次に、認証サーバーはアプリ中心のクレームリストを知る必要があります。 トークンは、ハックエントリの単一ポイントになります。 JWTトークンはアプリレベルのデータ用ではないことをいくつか読みました。 どちらにも欠点があるように思えますが、これらの主張をトークンに含めることに傾倒しており、これを以前に扱った人によって実行したいだけです。 注:すべてのAPIリクエストにHTTPSを使用するため、トークンは「十分」に安全であると思われます。私はAngularJS、C#、Web API 2およびMVC5を使用しています。

16
他のブロックはコードの複雑さを増しますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 5年前に閉鎖されました。 これは非常に単純化された例です。これは必ずしも言語固有の質問ではありません。関数を作成できる他の多くの方法、およびそれに加えられる変更を無視してください。。色はユニークなタイプです string CanLeaveWithoutUmbrella() { if(sky.Color.Equals(Color.Blue)) { return "Yes you can"; } else { return "No you can't"; } } 私が出会った多くの人々、ReSharper、およびこの男(コメントから、しばらくの間これを尋ねようとしていることを思い出した)は、コードをリファクタリングして、elseこれを残すブロックを削除することをお勧めします。 (私は大多数が言ったことを思い出せない、そうでなければ尋ねなかったかもしれない) string CanLeaveWithoutUmbrella() { if(sky.Color.Equals(Color.Blue)) { return "Yes you can"; } return "No you can't"; } 質問:elseブロックを含めないことで複雑さが増しますか? 私はelse、両方のブロックのコードが直接関係しているという事実を述べることにより、意図がより直接的に述べられているという印象を受けています。 さらに、特に後日コードを変更した後は、ロジックの微妙な間違いを防ぐことができます。 私の単純化された例のこのバリエーションを取り上げます(orこれは意図的に単純化された例であるため、演算子を無視します)。 bool CanLeaveWithoutUmbrella() { if(sky.Color != Color.Blue) { …

1
Jester for Javaのような突然変異テストツールの最新の代替品はありますか?
「確かにわかるのに、なぜあなたのテストは良いと思うのですか?Jesterは私のテストが気密であると言うこともありますが、見つかった変更が突然発生することもあります。強くお勧めします。」-ケントベック しかし、stackoverflowには「Jester」というタグすらありません。では、Jesterの最新の代替品はありますか?CoberturaやCloverなどのツールのコードカバレッジから統計を見つけること以外に、記述された単体テストが堅実であることをどのように確認できますか?

3
キューでは、「ヘッド」はどちらの端ですか?
私はいつも、キューの「ヘッド」を次に読む要素として考えていましたが、実際にその使用法に疑問を持つことはありませんでした。したがって、私が書いたリンクリストライブラリは、キューの維持に使用され、その用語を成文化しましたlist1_head。最初の要素を取得するマクロがあります。このライブラリをキューで使用する場合、これが削除される最初の要素になります。 しかし、チームの新しい開発者は、キューを別の方法で実装することに慣れていました。彼はキューを犬のように振る舞うと説明しました。頭で挿入し、尾で削除します。これは非常に賢い説明であり、彼の使用法はもっと普及しているに違いないと思うので、私の好みの使用法についての同様の刺激的な説明はありません。 したがって、2つの関連する質問があると思います。1、キューの「ヘッド」とはどういう意味ですか?2、なぜ「ヘッド」という言葉を使用してその概念を説明するのですか?

6
JavaScriptを一般的なスクリプト言語として使用できますか?
JavaScriptといくつかのフレームワーク(jQuery、Prototype、node.js)をクライアント側のWebプログラミングに使用しましたが、ほとんどのスクリプト作業をPythonまたはBashで行うデスクトップでは使用しませんでした。 しかし、ブラウザの外部で使用すると、JavaScriptがすばらしいスクリプト言語になります。誰もこれを試しましたか?JavaScriptはPython / Perl / Bashの適切な代替品となり、迅速で汚いスクリプト作成タスクに対応できますか?

8
Classという名前のクラス?
この投稿を改善したいですか?引用や回答が正しい理由の説明など、この質問に対する詳細な回答を提供します。十分な詳細のない回答は、編集または削除できます。 これはもっとスタイルの質問ですが、私は現在私のプロジェクトについて考えています。 学校をモデル化しているアプリケーションを作成していると仮定します。したがって、Student、Schoolなどのエンティティがあります。これは(ほとんどの言語で)Class予約語であるため、Classに到達するまで、これはすべて正常で直感的です。それClassが予約されたキーワードであることを考えると、学校のクラスをモデル化するそのようなエンティティを何と呼びますか?

6
生徒にアロカを教えるべきですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 6年前に閉鎖されました。 alloca現実の世界ではどれくらい広く使われていますか?alloca理にかなっているときに生徒に使用を教えるべきですか?または、絶対に使用しないように教える必要がありますか?C ++ RAIIのバックグラウンドから来るとfree、特に複数の出口点を持つ関数では、手動で呼び出す必要がないという考えは有望に聞こえます。
18 c  teaching 

2
GoogleがほとんどのアプリケーションでGWTを使用しないのはなぜですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 GoogleはGoogle Web Toolkit(GWT)を作成しましたが、独自のWebアプリケーションを構築する際には使用しません。 これは、GWTが動的アプリケーションの構築に適していないことを意味しますか?または、キャッシュに問題がありますか?またはRPCに問題がありますか?または、Googleがこのテクノロジーを使用できないようにする他の懸念はありますか? EDIT:ここでは、GoogleがどのアプリでもGWTを使用したことはありませんが、私が言いたいのは、なぜ彼らがGWTを広範囲に使用していないのかということです。

6
チームメンバーがスプリント計画を逃した場合はどうすればよいですか?
チームメンバーが年次休暇を取っているとしましょう。彼はスプリント計画には参加しませんが、イテレーション/スプリントの半ばまでに戻ってきます。彼が50%のキャパシティを持っているとしましょう。つまり、イテレーションの後半で利用できるようになります。 彼が戻ってきた後に彼と計画セッションを持っています。 彼が年次休暇をとる前、すなわちスプリント計画の前に、彼と計画を立てる。 タスクのスケジュールを立てたり、スパイクなどの非スプリントタスクに割り当てたりしないでください。 スプリントプランニング中に同僚に代わって計画を立てさせ、欠席している人が戻ってきたときにタスクを追加したり、すべての作業を実行できない場合はスコープを解除することができます。 彼に別の開発者と一緒に座ってもらい、しばらくの間ペアプログラミングを行います。 他に何か.. 私はあなたが何をしているのか知りたいです。 注:私たちは(1)を行っていますが、正しくないと感じています。
18 scrum  sprint 

11
動的言語は常に解釈されますか?
ほとんどの(すべてではないにしても)動的言語(Python、PHP、Perl、Rubyなど)を見ると、それらはすべて解釈されます。私が間違っている場合は修正してください。コンパイル段階を経る動的言語の例はありますか?動的言語はインタープリター言語と同一ですか?


5
Visual Studioセットアップ-ソリューションエクスプローラーが右側にあるのはなぜですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 VSをインストールするたびに(どちらのバージョンも遡ります)、右側にソリューションエクスプローラーがインストールされます。現在、ほとんどのUIの左側の列(およびビューポートの上部)にナビゲーションがあり、このナビゲーションの右側にコンテンツがあるため、これは常に間違っているように見えます。 そのため、ソリューションエクスプローラーを画面の左側にドラッグして、そこにドッキングします。しかし、他の開発者がこれを行うのを見たことがありません。 ほとんどのプログラマーが通常どのように環境をカスタマイズし、好きなテキストエディター、ブラウザー、プラグイン、グリースモンキースクリプトなどを追加するのが好きなのかを考えると、なぜVisual Studio開発者はこの単純なUIの変更を行わないのでしょうか? 他の誰かがこれを行うか、私は暗闇の中で叫んでいますか?

6
フリーランサーはアジャイル開発を使用できますか?
ソフトウェアの開発方法を改善したい。より速く、優れたコードを開発したい!今日、私はフリーランサーとしてウォーターフォール法を使用し、Webスタッフ(サイト、システムなど)を作成しています。このように動作するアジャイル開発(XP、SCRUMなど)を使用する方法はありますか?アジャイル開発について何も知らないのですが、どこから始めればいいですか?どうもありがとうございました。
18 agile  freelancing  scrum  web 

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