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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Apple Could Power the Web

23 点作者 kcl超过 12 年前

9 条评论

mooism2超过 12 年前
[Reference counting] <i>No garbage collection. Objective-C could still do more with respect to reference cycles, but that is primarily a non-issue, and easily solved in future versions.</i><p>I think if you solve this, you've implemented GC.<p>Which is not to say that you might not want some hybrid, but ref counting has its own downsides (caching, multi-threading) which the author does not mention.<p><i>[I]n a comparison with any popular scripting language, Objective-C will win, since while the scripting language may have superior syntax, it is also sure to be incapable of accomplishing many things which are trivially accomplished in Objective-C.</i><p>Such as?<p>The article is full of assertions which it doesn't attempt to justify, even with a link.
评论 #4853288 未加载
评论 #4853718 未加载
评论 #4853846 未加载
bitcartel超过 12 年前
Doubt it.<p>Today, Apple can't even power themselves, iCloud runs on Amazon Cloud Services and Windows Azure.<p>In terms of language, can't see Apple wanting to take on the additional responsibility of supporting the Objective-C runtime and foundation frameworks on Linux and Windows. They can't even keep up with RADAR bug reports from existing developers.
评论 #4854527 未加载
rabenfrass超过 12 年前
This post has many generalizations and little technical content. The subject is interesting (for ObjC programmers mostly), but arguments are shallow.<p>&#62; <i>it was never an issue to port correct C/C++ code</i><p>In C/C++ there is no such thing as a portable application only applications that have been ported, even with standard compliant code. Try porting between Linux/Solaris/Windows and see by yourself.<p>&#62; (paraphrased) <i>Backend apps should be written in Objective-C instead Java, let's rewrite them!</i><p>Before making such bold statements about rewriting applications, what can you tell me (if anything) about the speed of a server JVM compared with Objective-C? And this is really a broad question, since for starters, languages don't scale, architectures do. Your outdated SO link doesn't begin to answer. See this general benchmark <a href="http://shootout.alioth.debian.org/u32/which-programs-are-fastest.php?calc=chart&#38;gpp=on&#38;ifc=on&#38;gcc=on&#38;java=on&#38;ghc=on&#38;csharp=on&#38;sbcl=on&#38;v8=on&#38;hipe=on&#38;vw=on&#38;lua=on&#38;jruby=on&#38;php=on&#38;yarv=on&#38;python3=on&#38;perl=on" rel="nofollow">http://shootout.alioth.debian.org/u32/which-programs-are-fas...</a> and add to that Objective-C message passing. And then think how it translates to server code. Just food for thought.<p>&#62; <i>Java API replicates the entirety of the UNIX system layer in Java-ese, obscuring any helpful C idioms or UNIX-system knowledge in the process</i><p>Because you think that those idioms and platform specific code won't be an issue when ported, or they will be plenty of devs familiar with that, which isn't the case. Most programmers out there use Java because they couldn't code their way out of a paper bag.<p>&#62; <i>You cannot postpone garbage collection forever. This is a disaster for applications that need to scale.</i><p>Nope, GC happens incrementally, and it's not a disaster for scalable Java applications that are deployed now in the real world.<p>&#62; <i>Oracle now owns Java and is a hostile entity. Java is done. Its future as a product is finished. Whatever your relationship is with Java now, expect it to deteriorate.</i><p>Completely wrong. JDK 8 lambdas will be feature completed in January 2013, and if you are an Objective-C programmer, you know how much of a change it brings to the language. And we have Jigsaw, project coin, java.util.concurrent with CAS, and countless JSR. Java has better health than ever, ask around.<p>&#62; <i>Web shops won't go for Apple servers. All the development, all the monitoring, all the operational knowledge is based on a few varieties of Linux.</i><p>It's the cost, not the knowledge. Also if you are a linux admin you get the same toys in Mac. An Apple desktop makes sense because it's less likely to interrupt the work of someone with a salary, but a farm of web servers based on Linux is cheap and easily replaceable. The best contribution of Google to the "open" world was to show that you can scale on Linux.<p>And this makes me think, given that Apple makes money selling hardware, where is the motivation to compete with Java/.Net promoting server frameworks? This is all about us buying Apple hardware people, don't forget.<p>&#62; <i>developers who worked at Etsy when I was there, 100% either used a Mac to develop or use a Mac to develop now. This preference is standard in the industry.</i><p>Most devs in the planet are behind a cheap HP/DELL PC. Otherwise we would know based on StackOverflow logs and sites like that. You could say best devs use laptops, because that's at least what we see in dev conferences.<p>&#62; <i>PHP is (or was) the dominant web scripting language by a large margin. This happened because of performance and ease of use,</i><p>Java couldn't compete because JVM required 128MB RAM, and one app on a shared JVM instance could bring down the rest, so Java was dangerous and cost prohibitive for small sites.
serge2k超过 12 年前
I like how you say oracle is a hostile entity and then propose that Apple should charge licensing fees for using objective-c.<p>You state a lot of opinions as facts and give zero justification.
alecperkins超过 12 年前
&#62; <i>If I had to run a monolingual web stack, I would choose Objective-C for the sole language.</i><p>This article is severely undermined by its conflating internet and web. Objective-C doesn't have a significant presence in the browser, and is consequently a useless language for achieving a monolingual <i>web</i> stack. The article demonstrates a complete lack of awareness of the frontend side of the web and assumes that iOS apps are this frontend. There is not a single mention of JavaScript, or even the word "browser".<p>It also seems to be overly focused on the idea of computational performance, when in many cases applications are IO-bound. The descending cost of compute power means this efficiency edge in computation is decreasing in importance. Also, no mention of things like PyPy? Overall, the article has a very narrow-minded and misguided view of the web.
sauravc超过 12 年前
Some people have crazy ideas, and the world needs that. However, trading in Ruby or Python or [insert favorite scripting language] for Objective-C to write server code is a foolish idea that's divorced from reality (with some exceptions).<p>The vast majority of server code that is written is bit plumbing. Moreover, it's written by not-so-great devs who aren't gdb experts. The performance benefits of C-like languages are completely useless for all but a handful of companies like Google and Facebook. Unless you're doing heavy number crunching server side (which most web apps don't), there's no discernable benefit to using Objectiv-C or C/C++.<p>There are plenty of benefits to using Java or a scripting language though. The reasons are obvious to anyone techie enough to get this far.
评论 #4855263 未加载
plg超过 12 年前
Isn't golang the new backend hipster? Compiled, concurrent, and google is the mommy. I would bet on golang not obj-C. As long as Apple forces people to buy apple hardware in order to make use of obj c it will not catch on.
Executor超过 12 年前
I'd love for a c/c++-based platform to overrule Java... but Objective-c isn't the right language:<p>- Apple is a company that likes to take control away from people, why give them more monopolistic power? - You require a sub-decent xcode editor that only runs on mac computers. After spending around 2 years using xcode I can testify that its a piece of shit! - Objective-c is overly verbose, horrible syntax (i.e. gluing the method name + first parameter).
abolibibelot超过 12 年前
What could "Grand Central Dispatch is a better way to handle threading, queues ("threading for OO")" possibly mean?<p>A better way than what? Erlang/Akka Actors? Java concurrent libraries? Clojure STM? Single-threaded async callback fest?<p>Threading for OO?<p>I'm not even sure what the author is comparing Obj-C for web developement to.