タグ付けされた質問 「programming-languages」

タスクを完了するために計算のステップを実行するようにコンピューターに指示するための人工言語。プログラマーがコンピューターと通信できるようにします。

6
オプションのセミコロン
ほとんどの場合、汎用の命令型言語では、ステートメント区切り文字としてセミコロンが必要か、完全に禁止されています(CやPythonなど)。 ただし、JavaScriptなどの一部の言語では、ステートメントをセミコロンで区切らずに、他の区切り文字(改行など)を優先できます。 この背後にある設計上の決定は何ですか?同じ行に複数のステートメントを記述する場合、セミコロンが不可欠であることを理解していますが、セミコロンを必須にする別の理由があります(以下のCを除く)?

3
大規模なコードベースの離れた部分の間にデータフローを追加しやすくすることはできますか?
大規模なシステムに変更を加えるとき、機能の一部が別の部分からデータを取得する必要があるという問題にしばしば直面しますが、それらは深く分岐した呼び出しツリーの異なる部分にあり、イベントリスナー、遅延呼び出しを経由している可能性があります。このようにして、簡単な変更ですばやく膨らませることができます。 Yossi Kreininのブログ投稿(http://www.yosefk.com/blog/i-want-a-struct-linker.html)からの引用: あなたはあなたがたくさん渡すいくつかの種類のデータ構造を持っています。すぐに、構造に関して最も価値のあるものは、それが保持するデータではありませんが、制御の毛のような流れを通してずっと利用できるという事実です。 グローバル変数は、コードを遠く離れたコードに「叫び」させる1つの古典的な方法ですが、問題があることがわかっています。動的スコープ変数はより制限された方法ですが、同様に問題があります。 この問題を解決することを目的としたプログラミング言語の研究はありますか?静的チェック、簡単な単体テスト、その他の機能を備えたまま、予期しないデータフローを大規模なコードベースに簡単に追加できますか?




4
現在、ソフトウェアエンジニアリングのための最新の標準化された適性テストはありますか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ソフトウェアエンジニアリングスタック交換のトピックになるようにします。 6年前休業。 バックグラウンド 私はソフトウェアエンジニアとして働いており、来年かそこらの新しい契約を模索している最中です。私の検索では、本日以前に質問したこのよくある質問に示されているように、いくつかの不条理な技術面接に耐えています。 私が尋ねられた質問がほとんどいつもばかげているわけではなかったとしても、それにもかかわらず、さまざまな契約の機会のために何度もそれらに答えるのはうんざりするでしょう。 そのため、実際にソフトウェアの専門家が受けられる標準化された試験を受けることで、不合理な技術面接の質問(つまり、オタクのいじめ)の代わりに面接担当者が参照できる共通のスコアカードが提供されると考えました。 質問 働く専門家が受験できる標準化されたソフトウェアエンジニアリング適性テスト(SEAT ??)はありますか? そこにそのような試験がない場合、どの質問またはトピックをカバーする必要がありますか? 追加の考え 質問やトピックを提案する場合は、標準的な適性テストのポイントとなるため、現代の開発慣行や労働力の現実的なニーズに関連する質問やトピックに焦点を当てることに留意してください。言い換えれば、道化師横断の質問はありません。

6
プログラミング言語の直交性を検証/証明する方法は?
私は直交性の概念を知っていますが、プログラミング言語の観点から、それを検証/証明する方法はありますか? たとえば、C#では、メソッドのシグネチャとして、publicまたはstaticメソッドシグネチャを使用できます。どちらか一方または両方を使用でき、それらは互いに干渉しないので、互いに直交していますよね? 私の質問は、残りの機能、特に互いに関連しない機能についてはどうすればよいですか? すべての機能が共存/スタックする必要がありますか? 100%直交するプログラミング言語はありますか?

5
Javaは、C ++のように、クラス定義と実装の分離を促進しますか?
私は宿題をしていて、GRASPの「保護されたバリエーション」に従って、どちらのアプローチがより良いかを評価する必要があります。Stack Overflowで、C ++でのヘッダーファイルとコードファイルの分離に関する質問を見つけました。 ただし、Javaがクラス定義とクラス実装の分離を促進する際にC ++に従わない理由を知りたいのですが。C ++メソッドに比べて、Javaメソッドには利点がありますか?

5
プログラミング言語の分析
でSICP、著者の状態(セクション1.1プログラミング言語の三つの基本的な「仕組み」があるということ): 言語が関係する最も単純なエンティティを表すプリミティブ式 組み合わせの手段。これにより、複合要素はより単純な要素から構築されます 抽象化の手段。これにより、複合要素に名前を付けて、ユニットとして操作できます。 これらの要素やメカニズムの観点から主流のプログラミング言語(Javaなど)を分析するにはどうすればよいですか?

3
タイプのエイリアス/シノニムについての考え?
言語の戦争やリストにならないような方法でこの質問を構成するために最善を尽くします。この質問に対する優れた技術的な答えがあると思います。 さまざまな言語がさまざまな程度で型エイリアスをサポートしています。C#では、各コードファイルの先頭で型のエイリアスを宣言でき、それらはそのファイル全体でのみ有効です。ML / Haskellのような言語は、型定義を使用するのと同じくらい、型エイリアスを使用します。C / C ++はと、ソートワイルドウェストのあるtypedefと#define別名型に一見互換的に使用されていることが多いです。 タイプエイリアスの利点は、あまり論争を引き起こしません。 これは、言語によって自然に記述されている複合型、例えばを定義することが便利になりますtype Coordinate = float * floatかtype String = [Char]。 長い名前は短縮できます:using DSBA = System.Diagnostics.DebuggerStepBoundaryAttribute。 MLやHaskellなどの関数パラメーターに名前がないことが多い言語では、型エイリアスは自己文書化のようなものを提供します。 マイナス面はもう少し不明瞭です。エイリアスが急増し、コードを読んで理解したり、プラットフォームを学習したりすることが難しくなる可能性があります。Win32 APIのは、そので、良い例でDWORD = int、そのHINSTANCE = HANDLE = void*とそのLPHANDLE = HANDLE FAR*とな。これらすべての場合において、HANDLEとvoidポインタ、またはDWORDと整数などを区別することはほとんど意味がありません。 王が主体に完全な自由を与え、彼ら自身に責任を負わせるべきか、または疑わしい行動のすべてを介入させるべきかという哲学的議論を別にして、タイプエイリアスの利点を可能にする幸せなメディアが存在するだろうかその乱用のリスクを軽減する? 例として、長い名前の問題は、優れたオートコンプリート機能によって解決できます。たとえばVisual Studio 2010では、IntellisenseをSystem.Diagnostics.DebuggerStepBoundaryAttributeに参照するためにDSBAを入力する必要があります。タイプエイリアスのその他の利点をより安全に提供する他の機能はありますか?

4
依存性注入はどのようにして言語に統合できるでしょうか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 依存性注入をC#のような言語に直接統合する方法を少し考えてきました。私はあなたの意見を聞きたいと思う潜在的な解決策を考え出しました。私は多くの依存関係注入フレームワークを使用していないので、見落としているものがあるかもしれません とにかく、キーワードを使用してプロパティを「注入可能」として宣言できるようにするという考えです。オブジェクトがインスタンス化され、そのプロパティがコンストラクターまたはオブジェクト初期化子を介して初期化されない場合、オブジェクトはいくつかのグローバルサービスからそのプロパティタイプのインスタンスを要求します。 同様に、さまざまなタイプのハンドラーをそのサービスに登録して、注入されたプロパティタイプをインスタンス化できるようにします。 この種のアーキテクチャーIMOを使用する利点は、かなり柔軟で使いやすいことです。欠点は、インジェクションを持つクラスを開始するたびにシングルトンへのコールアウトを実行するオーバーヘッドがある可能性があることです。 繰り返しになりますが、これは、高性能ソリューションで頻繁にインスタンス化されるクラスの問題にすぎないため、それほど問題にはなりません。おそらく、それらのインスタンスで何らかのファクトリを使用できます。 考え、問題、質問、より良いアイデア? コード public class SomeClass { public SomeClass() { //implicit behavior if Animal is not set in constructor or initializer this.Animal = GlobalInjector.Get(this,typeof(Mammal)) } public injectable Mammal Animal { get; set; } } GlobalInjector.Register(typeof(Mammal), () => return new Mammal(someParameter));

7
関数型プログラミングの引数[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 私は最近、F#を楽しみに学んでいます(私はVB.NET/C#の開発者です)。理論的にはそうです。しかし、C#ではなくF#でコーディングすることを選択するシナリオを考えるのに苦労しています。何か案は?

4
金融セクターに最も関連するプログラミング言語?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 6年前休業。 私は大学の新入生で、ソフトウェアエンジニアリング/ファイナンスのダブルメジャーをやっています。私は自分でプログラミングを学んでおり、これまでにphpにかなり慣れています。私はあなたが最も関連するプログラミング言語が金融/投資銀行の使用のためであるとあなたが何を考えているのかと思っていましたか? 私はこのスレッドを読みました:https : //softwareengineering.stackexchange.com/questions/13109/books-on-developing-software-for-financial-markets-investment-banks 私は言語(基本的な財務/定量的なものではない)について学習/読み始め、将来の財務/定量的なものの基礎を設定したいと考えています。

6
深層または広域に焦点を当てるべきか[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ソフトウェアエンジニアリングスタック交換のトピックになるようにします。 4年前休業。 私は半年以上プロの開発者であり、世界が本当に大学を卒業していないことに驚いています。私は自由な時間に学習を続けてきましたが、どこに集中すればよいのでしょうか。 FOCUS 1)私の会社で使用されている開発スタック。私の日々の開発で最も早いペイオフ。#深い 焦点2)同じパラダイムを持つ異なる言語。私の知識と考え方を一般化できるかどうかを確認してください。 焦点3)異なる言語、異なるパラダイム。私の境界線を拡大し、物事を行うための新しい方法を学びます。#最も広い 誰かが別の焦点を持っている場合は、そこに自由に出してください。

7
(正しい?)テクノロジーと環境の選択
私たちは2人の開発者であり、新しいWeb製品開発を開始しようとしています。 どちらも無駄のないスタートアップアプローチのファンであり、継続的な導入を実践したいと考えています。 ここでジレンマが発生します-私たちは両方ともC#/ Windowsのバックグラウンドから来ており、どちらかを決定する必要があります。 .NETとWindowsに固執することで、新しいテクノロジーの学習に時間を費やすことなく、開発に全力を尽くします。 Ruby on RailsとLinuxに切り替えます。Rubyon RailsとLinuxは、迅速な立ち上げと広大なオープンソースサポートで高い評価を得ています。マイナス面は、Ruby、Rails、Linuxの学習に多くの労力を費やす必要があることです... あなたならどうしますか?他にどのような考慮事項がありますか?

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