TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Java is just fine for your online service startup development

30 点作者 ppolsinelli超过 15 年前

8 条评论

raju超过 15 年前
Good advice. If you know a technology well, then run with it. Focusing on actually delivering value vs. bragging rights to the latest and greatest dynamic language/framework.<p>On a side-note, I will say this - I am a Java developer (at my day job), and Java-land boasts some of the best tool support there is out there. On the flip side, the refactoring argument does not hold much water. These days almost everything in Java, especially when using any kind of framework means a lot of configuration and wiring using XML, Annotations and other syntaxes (EL - Expression Language comes to mind). Most tools don't see these as live code, so refactoring essentially boils down to a lot of text search and replace.<p>Java-land is learning a lot from the other communities and products out there. I have been told the Play Framework (<a href="http://www.playframework.org/" rel="nofollow">http://www.playframework.org/</a>) has some potential but haven't looked at it yet.
评论 #981657 未加载
评论 #981784 未加载
old-gregg超过 15 年前
If you are a Java expert and know nothing else, roll with it: learning something significantly different from scratch to a degree comparable with your today's Java expertise will take a long time. That part he got right.<p>But if your toolbox is bigger to begin with, I see very little advantages in using Java and his arguments aren't persuading: Java is a memory hog (which matters more than CPU cycles in the era of VPS), Java starts slow - it won't allow fluid workflows like Python/Ruby do. Java doesn't interface well with UNIX or anybody else for that matter.<p>Java-centric libraries and frameworks, while numerous, are tedious to work with: they tend to be over-engineered, overly-relying on XML to an unhealthy degree, hard to navigate and verbose to use.<p>I am coming from Microsoft/.NET and Ruby/Rails background and even after a year of adjusting, everything in JVM-centric world feels overly complex, slow and "rigid". Java people seem to swim in their own definition of object oriented programming and oh my... they stick with it. Even interviewing "Java-minded" people is painful.<p>All in all, I am 100% with the anonymous poster he quoted in the beginning of his post: <i>"Its great for consultants because it means more billable hours"</i> Not in a sense that it takes a lot of typing, but simply because there're lots of excuses to bill more for.
评论 #982231 未加载
评论 #982343 未加载
dasil003超过 15 年前
<i>And of course the point is that there is nothing in the nature of the language and tools that forces you to use complex solutions.</i><p>While it is definitely true that there is nothing in the nature of Java that forces you to use <i>the kind of complex solutions often foisted on Java programmers</i>, there definitely <i>is</i> something in the nature of Java that leads to needlessly complex code and heavyweight patterns that are not needed at all in more powerful languages.<p>To me this article just seems like a justification to use Java where none is needed. You can do a startup in any language, and the best one is the one your dev team is most proficient with. Java is the 500-lb gorilla these days and doesn't need any advocacy.
aarongough超过 15 年前
"We should all be grateful to the dynamic language communities, that with their repeated successes have shown that the "king is naked" and self-referential practices of formal code quality or blind following of methodologies valid for over-ruled corporations are useless advice in many environments, and that a more socially oriented testing and user interface design is what wins for creating online services. But I believe the development language involved is accidental."<p>It's possible that English is not the OP's first language, but even with this in mind nothing in this article makes any sense.
评论 #981608 未加载
评论 #981800 未加载
ivenkys超过 15 年前
This is quite a well-argued post with decent examples. A point well worth repeating.<p>Mature language and tools, stable and "fast execution", clean interaction with popular services. Its not sexy but if you are competent enough - it can get the job done and get it done fast.
评论 #982079 未加载
评论 #981788 未加载
rbanffy超过 15 年前
Isn't this based on the questionable assumption one can be as productive with Java web frameworks as they would be with, say, Rails or Django?<p>Wouldn't the cost of learning a more productive (assuming the initial supposition is incorrect and that there is a difference of productivity between technologies) framework be diluted in the total lifetime of the product?<p>If all you have in your toolbox is a blunt axe, wouldn't it make sense to get a sharper one before you attack the forest?<p>In the end, it all depends on the lifetime of the product. If it's a one iteration release, then go with whatever you already know that solves the problem. If the lifetime of the product tends to infinity, go with the language that expresses the product in the most concise way and manage to learn it well. The vast gray area between these points is where you can place all those fancy languages and frameworks wherever your expertise and product dictate.
hello_moto超过 15 年前
One common theme I learned when working with Java developers is that there are vast amount of information out there regarding:<p>* Design Patterns (GoF + newer patterns) * OOAD/OOP * Refactoring * TDD, Agile, and XP * "Reusable", "Generalization", "Framework"<p>that Java developers read the topics lightly and apply immediately without taking the time to understand them and when to use them. This doesn't happen much in other programming language communities because I rarely see someone writing design pattern tutorial in Perl. I won't be surprised that we will see these issues again in Ruby...
评论 #982556 未加载
bham超过 15 年前
<i>but this is history, boring, and by now not very interesting</i><p>So it is in the past, boring, and in the past and boring. OK.