タグ付けされた質問 「java」

Javaは、元はSun Microsystemsによって開発された、プラットフォームに依存しない高レベルのオブジェクト指向プログラミング言語です。Javaは現在、2010年にSunを購入したOracleが所有しています。

6
この時点で、.NETとJavaの間のプロジェクトに何を選択しますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターをご覧ください。 8年前に閉鎖されました。 新しいプロジェクトを開始したばかりで、Javaと.NETの2つのテクノロジーから選択できます。作業中のプロジェクトには、2つのテクノロジー(たとえば.NETには必要なものがありますが、Javaにはありません)を簡単に選択できる機能は含まれていません。もちろん必要です)。考慮する: 性能 利用可能なツール(サードパーティのツールも含む) クロスプラットフォームの互換性 図書館(特にサードパーティの図書館) コスト(OracleはJavaを収益化しようとしているようです) 開発プロセス(最も簡単/最も速い) また、Linuxはメインプラットフォームではありませんが、プロジェクトをLinux / MacOにも移植したいことを忘れないでください。OracleとJavaコミュニティを取り巻く問題と、MonoとJavaの制限も忘れないでください。両方に経験のある人が概要と、自分が選択する理由とその理由についての主観的な見解を提供できれば幸いです。
13 java  .net  mono 

1
静的メソッドを悪用していますか?
数ヶ月前、私は新しいプロジェクトで働き始めました。コードを調べてみると、使用されている静的メソッドの量が多くなりました。としてのユーティリティメソッドだけcollectionToCsvString(Collection<E> elements)でなく、多くのビジネスロジックも保持されます。 私はこの背後にある理論的根拠の責任者に尋ねたとき、彼はそれが春の専制政治から逃げる方法だと言った。この思考プロセスに何かがあります:顧客の領収書作成方法を実装するために、サービスがあります @Service public class CustomerReceiptCreationService { public CustomerReceipt createReceipt(Object... args) { CustomerReceipt receipt = new CustomerReceipt(); // creation logic return receipt; } } さて、この男は、基本的にはクライアントクラスがSpring Beanでなければならないという制限を課しているため、Springによって不必要に管理されるクラスを持つことを嫌うと言いました。最終的にすべてをSpringで管理することになります。これにより、手順を踏まずにステートレスオブジェクトを操作する必要が生じます。ここに記載されている内容は多かれ少なかれhttps://www.javacodegeeks.com/2011/02/domain-driven-design-spring-aspectj.html したがって、上記のコードの代わりに、彼は public class CustomerReceiptCreator { public static CustomerReceipt createReceipt(Object... args) { CustomerReceipt receipt = new CustomerReceipt(); // creation logic return receipt; } } …

4
Callable <T>とJava 8のSupplier <T>の違いは何ですか?
CodeReviewでのいくつかの推奨事項の後、C#からJavaに切り替えました。そのため、LWJGLを調べていたときに覚えていたことの1つは、への呼び出しはすべてDisplay、Display.create()メソッドが呼び出されたのと同じスレッドで実行する必要があるということでした。これを思い出して、私はこのようなクラスを作成しました。 public class LwjglDisplayWindow implements DisplayWindow { private final static int TargetFramesPerSecond = 60; private final Scheduler _scheduler; public LwjglDisplayWindow(Scheduler displayScheduler, DisplayMode displayMode) throws LWJGLException { _scheduler = displayScheduler; Display.setDisplayMode(displayMode); Display.create(); } public void dispose() { Display.destroy(); } @Override public int getTargetFramesPerSecond() { return TargetFramesPerSecond; } @Override public Future&lt;Boolean&gt; isClosed() …
13 java 


2
TCP / IPアプリケーションとHTTPアプリケーションの比較[終了]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 6年前に閉鎖されました。 Javaで書かれた大規模なユーザー向けWebサイトの開発に興味があります。 設計に関しては、メインのWebアプリケーションに対するデータプロバイダーとして機能できる、独立したモジュラーサービスの開発を考えています。 これらのモジュラーサービス(データプロバイダー)の作成については、Springなどの既存のフレームワークを活用し、RESTfulデザインパターンに従ってこれらのサービスを開発し、JSONなどのメッセージ形式でHTTPを介してリソースを公開するか、既存のネットワークを活用できますNetty(http://netty.io/)のようなフレームワークとProtobufs(https://developers.google.com/protocol-buffers/docs/overview)のようなシリアル化形式、およびシリアル化されたprotobuf を送受信するTCPサーバーを開発するペイロード。 どちらを選択するかはいつですか?Protobufsのようなシリアル化形式を使用して、ワイヤを介してバイトストリームを送信する利点はありますか?JSONを使用するだけでオーバーヘッドが発生しますか?TCP / IPを使用してからHTTPを使用するまでのオーバーヘッドはどれくらいですか?そのようなサービスを構築するためにSpring over Nettyをいつ使用する必要がありますか?
13 java  rest  http  serialization  tcp 

4
動詞であるブールフィールドの命名
Javaでは、慣例により、ブールフィールドのゲッターおよびセッターはisField()およびになりsetField()ます。これは、のような形容詞ですフィールド名と完全に正常に動作しactive、visible、closed、など しかし、次のような動詞の意味を持つフィールドに名前を付けるにはどうすればよいhaveChildrenですか?「_ing」を動詞()に追加しますか?havingChildren 明確にするために、メソッド名(getterおよびsetter)はIDEによって自動生成されるため、制御できません。したがって、必要なのは適切なフィールド名であり、IDEがそのゲッターを生成するときに意味があります。たとえば、hasChildrenは完全なフィールド名ですが、IDEがフィールドのゲッターを生成すると、になりますisHasChildren。これをどうやって解決しますか?
13 java  naming 

2
どのk-best最短パスアルゴリズムを考慮する必要がありますか?
グラフ検索の最適化問題を解決しています。有向グラフを介して、k個の最適な非循環最短経路を見つける必要があります。 正確で近似的なk-bestアルゴリズムが多数あることは知っていますが、最近の研究のほとんどは、非常に大きく、非常にまばらに接続されたグラフ(道路のルーティングや方向など)を対象としているようです。 私の問題の側面を区別する: グラフは約160の頂点で構成されています。 グラフはほぼ完全に接続されています(双方向であるため、〜160 ^ 2〜= 25kエッジ) kは非常に小さい(おそらく10未満) 最大パス長はおそらく制限され、同様に非常に小さくなります(例:3-5エッジ) 上記で「非周期的」と言いましたが、繰り返しますが、ソリューションにはサイクルを含めることはできません。これは1-best最短パスの問題ではありませんが、k-bestの問題になります-たとえば、道路のルーティングを検討すると-AからBへの2番目の最短パスは1-bestと同じで、どこかのブロックの周りの簡単な旅行。それは数学的に最適かもしれませんが、あまり有用な解決策ではありません。;-) 計算ごとに、エッジをその場で再重み付けする必要がある場合があります。エッジコストはいくつかの要因の加重合計で構成され、最終要件(取得する場合はいつでも)により、ユーザーはそれらの加重要因の独自の優先順位を指定して、エッジの重みを変更できます。これは比較的小さなグラフであるため(数百KBで表すことができるはずです)、メモリ内でグラフを複製し、再重み付けを適用してから、複製されたグラフで検索を実行するのが妥当です。しかし、その場で重みを計算しながら検索を実行するより効果的な方法があれば、興味があります。 Santos(K最短パスアルゴリズム)、Eppstein 1997(k最短パスの検索)などで説明されているアルゴリズムを探しています。Yenのアルゴリズムは、主に既存のJava 実装のために興味深いものです。私は研究論文を読むことを恐れていませんが、私の問題の詳細を捨てて、読書時間を節約するための指針を求めることは価値があると思いました。 また、Java実装へのポインターがある場合は、さらに良いでしょう。
13 java  algorithms 

1
同期を廃止し、待機して通知する時間ですか?
synchronizedを使用するよりも使用することが望ましい単一のシナリオ(古代のJVMとの互換性以外)がありますLockか?誰でも新しいシステムを使用しwaitたりnotify、新しいシステム上で正当化することはできますか? 実装でそれらのいずれかを使用する必要があるアルゴリズムはありますか? この問題に触れた以前の質問がありますが、これをもう少し詳しく見ていきたいと思いdeprecateます。新しい施設で解決されたtrapや落とし穴、注意事項は非常に多くあります。すぐにそれらを陳腐化する時が来るかもしれないと感じています。

6
ロギングのルールとアドバイス?
私の組織では、ロギングに関するいくつかのルール/ギルドラインをまとめました。これについて、追加またはコメントできるかどうかを知りたいと思います。 私たちはJavaを使用していますが、一般的にlogginについてコメントすることができます-ルールとアドバイス 正しいログレベルを使用する エラー:何かが非常に間違っているため、すぐに修正する必要があります 警告:プロセスは修正せずに続行できます。アプリケーションはこのレベルを許容する必要がありますが、警告は常に調査する必要があります。 情報:重要なプロセスが終了したという情報 デバッグ。開発時にのみ使用されます 何をログに記録しているかを確認してください。 ロギングがアプリケーションの動作に影響を与えないようにします ロギングの機能は、ログにメッセージを書き込むことです。 ログメッセージは、説明的で、明確で、短く、簡潔でなければなりません。 トラブルシューティングの際にナンセンスなメッセージはあまり使用されません。 log4jに適切なプロパティを配置する 適切なメソッドとクラスが自動的に記述されることを入れてください。 例: Datedfile -web log4j.rootLogger=ERROR, DATEDFILE log4j.logger.org.springframework=INFO log4j.logger.waffle=ERROR log4j.logger.se.prv=INFO log4j.logger.se.prv.common.mvc=INFO log4j.logger.se.prv.omklassning=DEBUG log4j.appender.DATEDFILE=biz.minaret.log4j.DatedFileAppender log4j.appender.DATEDFILE.layout=org.apache.log4j.PatternLayout log4j.appender.DATEDFILE.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%C{1}.%M] - %m%n log4j.appender.DATEDFILE.Prefix=omklassning. log4j.appender.DATEDFILE.Suffix=.log log4j.appender.DATEDFILE.Directory=//localhost/WebSphereLog/omklassning/ ログ値。 アプリケーションから値を記録してください。 ログプレフィックス。 アプリケーションのどの部分からロギングが書き込まれるかを、できればプロジェクトで合意された接頭辞などを使用して記述してください。 PANDORA_DB テキストの量。 ロギングテキストが多くなりすぎないように注意してください。アプリのパフォーマンスに影響を与える可能性があります。 ロギング形式: -log4jで使用するいくつかのバリアントとメソッドがありますが、例外をログに記録する場合は、次の形式を統一して使用したいと思います。 logger.error("PANDORA_DB2: Fel vid hämtning av frist i …
13 java  logging 

6
次のコードスニペットからあまりにも多くのif / else-ifから脱出するより良い方法は何ですか?
入力として渡された「アクション」値に基づいてタスクを実行するサーブレットを作成しようとしています。 サンプルは次のとおりです public class SampleClass extends HttpServlet { public static void action1() throws Exception{ //Do some actions } public static void action2() throws Exception{ //Do some actions } //And goes on till action9 public void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException { String action = req.getParameter("action"); /** * I find …

2
どうすれば自分のコーディングスキルを長続きさせることができますか?
この秋までに、私の2つの小さなWebサイトは、快適で快適に生活するのに十分な最小限/ゼロの入力で、月に合計約1200ドルを生成するはずです。 別のビジネスベンチャーに着手するのではなく、今後数年間、本当に良いことや、それを必要とする他の人々に役立つことをしたいと思っています。私は4年か5年を費やして価値のある目的に専念し、すでに持っているWeb開発とプログラミングのスキルを最大限に活用したいと考えています。 問題は、どこから始めればよいかわからないことです。私は自分自身の素晴らしいアイデアを持っていませんし、多くの大きな慈善団体に非常に懐疑的です。理想的には、誰もが無償で支援に集中している小さなプロジェクトを見つけたいです。 そのような小さな組織はありますか? プロジェクト/ウェブサイト/アプリのアイデアを持っている人はいますか? これは典型的なStackOverflow 2 + 2 =ではないことを知っていますか?タイプの質問とそれを削除したい人もいますが、IT業界の慈善的性質(SO自体を見てください)を考慮すると、これは現在またはキャリアのある時点で多くの開発者に非常に関連する質問です。日本の最近の出来事を考えると、この質問は、他の人が利用できるスキル/時間で他の人を助ける方法を探している多くの人々に特に関連しています。 これに関するあなたの考え/答えを読むのを本当に楽しみにしています、ありがとう
13 c#  java  php  javascript  jquery 

2
Logger.getLogger(MyClass.class)は、log4jロガーを初期化する最良の方法ですか?
このMkyongチュートリアルでは、ロガーを次のように初期化することを提案しています。 @Controller public class WelcomeController { private static final Logger logger = Logger.getLogger(WelcomeController.class); // etc } 今、おそらくあなたが使用する他のすべてのクラスには、ロガーがあり、同じようにロガーを初期化します。 私の質問は-これはそれを行うための最良の方法ですか?それは...繰り返しのようです。
13 java  logging 

1
「構文酢」とはどういう意味ですか
Groovy in Action、第2版を読んでいて、脚注で次のテキストを見つけました Javaは、プログラマーがそれを使用するのを思いとどまらせるために、そのような構成体に「構文酢」をかけます。 syntax vinegarここでいう用語の意味は? この用語を聞いたことがなく、DuckDuckGoとGoogleで検索しましたが、意味が見つかりませんでした。しかし、それは複数の場所で使用されています。誰かがこの用語の意味と、それがプログラミング言語の文脈でどのように適用されるかを明確にできれば素晴らしいと思います。これが有効な質問となることを願っています。私がこれを尋ねることができる他のstackexchangeサイトを見つけることができませんでした。
12 java  syntax  groovy 


5
継承とnull値の追加プロパティ
オプションのフィールドを持つクラスの場合、継承またはnull許容プロパティを使用する方が良いでしょうか?この例を考えてみましょう: class Book { private String name; } class BookWithColor extends Book { private String color; } または class Book { private String name; private String color; //when this is null then it is "Book" otherwise "BookWithColor" } または class Book { private String name; private Optional&lt;String&gt; color; //when isPresent() …
12 java  inheritance  class  null 

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