Dotnet and Java

Java And Dot Net
This page I’m starting out of a real-world need, and this need is behind the name I chose, JavaAndDotNet, rather than JavaVsDotNet?. I’m actually a little surprised that no such page is already on wiki. Yes, there are bits and pieces. But I’ve had to do a lot of research in order to pull together the pieces. My need: to understand the features each platform provides– No, not features. I need to grasp the gestalt of each. I do not need to know which is better, nor do I care. Rather, I need to talk intelligently to my coworkers about how each approach applies to the design problems we face. Therefore, I’m interested in exploring both. –TimKing (DeleteWhenCooked)

JavaAndDotNetPhilosophies – Millieu

Java’s tagline has always been “Write once; run anywhere.” If .NET had a similar tagline, it might be “Write in any language; run on Windows.” Each adopts a different approach which permeates each community.

Java standards, for example, are specified and documented to be used in a variety of contexts and combinations. You can rearrange them ad hoc to devise almost any situation you desire. In contrast, .NET standards are designed for a given context and work well in that context.

Take JavaServlets, on the web tier. You can write them as pure Java classes. Or you can use JSP. You can use Struts or JSF or JSTL on top of JSP. Or you can shove JSP in favor of something like Tapestry. Or you can use these in combination in seemingly limitless ways. The resulting web application you can run on an embedded server like JettyServer. Or you can deploy it on a more elaborate server like ApacheTomcat (which could also be embedded) hosted under the built-in HTTP server Coyote, or under InternetInformationServer or ApacheHttpd (any of which Jetty could also do). Or you can go with a more integrated enterprise solution like JbossServer or IBM’s WebSphere or BEA’s WebLogic. Each possibility has its own strengths and weaknesses. It’s a stunning, confusing, and sometimes even frustrating array of alternatives and possibilities. And this is just looking at a single Java standard.

On the other hand, .NET WebServices use AspDotNet hosted under InternetInformationServer. Period. That’s it. No choices. No options. And nothing for you to screw up.

I think there are “not endorsed” way to do things via DotnetRemoting?, or even use a third party MiddleWare to achieve the same, however what you said is the MicrosoftWay.

This phenomenon manifests the difference between JavaAndDotNetPhilosophies. Neither is innately superior. The Java approach provides more choices and flexibility. The .NET approach provides more certainty and order.

(I used to think everyone preferred the former. As I’ve grown wiser, I’ve learned I was wrong. For an excellent example preferring the latter, see PageAnchor: generalization near the bottom of CsharpVsJava.)

There’s another important manifestation of this difference: How do you learn about each? With Java, you can go to the book store, where there are shelves of books from which to choose. But most Java technologies have good documentation available on-line. Some of Sun’s own Java books are even available for free download, but we still tend to buy paper copies of many of them. While Java books are very important to the Java developer, they fill a different role. We buy Java books after we’ve decided what we want to read. But they are not necessarily the first-chance documentation that .NET books are. In order to get started with .NET, you pretty much need to buy a book. You may need to buy that book even to understand exactly what .NET is and how to use it.

I’m going to disagree on that point. I got started in .NET by downloading VisualStudioExpress and using the tutorials provided with it. The MSDN documentation is usually very good (there are some notable weak spots) and is available online and as an additional 3.2GB install with VS. I needed a book to get started with Java web development because of the Java toolset’s looser coupling – while it gives you far more flexibility, it’s far harder to find a simple answer. It took me several days of shenanigans and broken Eclipse plugins to get an IDE working remotely close to Visual Studio in terms of web development. But I fully agree that if you don’t want to do it the Microsoft way, your choices become rapidly limited, as opposed to Java. — LiamClarke?

Maturity

(July 2005) Java is 10 years old. .NET is less than half that. When Java was only 5, it was a pain to work with. .NET is not quite the pain Java was at its age. However, .NET is still younger, and it shows.

Third-party support for .NET is weaker than for Java. In general, for any given design problem, many more Java solutions are available than .NET solutions. This is partially due to the Java approach (see Millieu on this page), but it’s also arguably due to the fact that .NET has had much less time to build a community.

Implementations

Though there are multiple sources implementing DotNet (MonoProject, DotGnu), the benchmark is MicrosoftDotNet. Other implementations are only partially compatible, and are likely to remain such, as the .NET core libraries are based on proprietary standards. (See DotNetForLinux.)

The core Java technologies, while their reference implementations are Sun’s, are based on open standards and have certified, working alternatives, including open source ones. There are multiple working implementations of both the standard runtime and J2EE (JbossServer, JonasServer?, WebLogic, WebSphere).

Languages

DotNet works with a number of programming languages (CsharpDotNet, ManagedCeePlusPlus, VisualBasicDotNet, VisualJaySharpDotNet). Note that porting standard CeePlusPlus or legacy VisualBasic to .NET can be harrowing. To do so, you must traverse a maze of exceptions, sacrifices, and compromizes designed to make these languages compatible with the CommonLanguageInfrastructure.

Some say CsharpLanguage is the “consensus” language for DotNet. Whether or not this is true, it is closest in style and features to JavaLanguage. In fact, C# and Java tend to leap-frog, pulling features from each other for each successive release. See CsharpVsJava.

Compilers do exist to turn languages other than JavaLanguage into JavaByteCode. But JavaLanguage is still the standard. If you want to design any heavy-duty software for the JavaVirtualMachine, you use JavaLanguage. Others are companion languages. (See for example JavaPython.)

Tiers and Technologies

InternetInformationServer hosts all WebServices in .NET. To design them, you can use AspDotNet (with MicrosoftWebForms), or you can use DotNetRemoting. The former is typically used on the web tier and the latter on the business tier. AdoDotNet can then be used to persist business data to any database that has a .NET DataProvider? or ODBC support. For example, you can use MySql using either of these: see http://dev.mysql.com/tech-resources/articles/dotnet/. Or you can use third-party tools to support ObjectRelationalMapping, or you can write your own database-access code.

In the Java world, WebServices can be hosted under almost any web server. On the web tier, JavaServlets run inside of a ServletContainer, frequently using JavaServerPages. On the business tier, EnterpriseJavaBeans (“EJBs”) run inside of an EjbContainer. EntityBeans (a type of EJB) can be used as a bridge to the database. ObjectRelationalMapping and JavaDatabaseConnectivity is also available. The companion and third-party technologies available to augment this simple scheme are too numerous to mention. Suffice it to say that none of these elements are set in stone.

Development Environment

Most Java developers use EclipseIde, NetBeans, or IntellijIdea. Most .NET developers use VisualStudioDotNet.

Java tends to support the latest development processes first. VisualStudioDotNet 2005 will add features, like source-code generation and automated refactoring, that have been available in the Java IDEs for years. JavaUnit is the benchmark for automated unit testing. Now, features like continuous testing (as continuous compilation before it) are being developed using Java.

How do tools used to design user-interfaces differ between the platforms?

Source Code

Sun publishes the source code for the core Java libraries. This can be valuable if the documentation is inadequate or if you need to figure out a bug in a library. I’ve saved countless hours debugging because I could step into the Java source.

For some projects, this may also pose a legal risk, requiring an explicit policy. For example, if you contribute to the Apache Harmony project, you may not contribute in any area in which you’ve “been exposed to” Sun’s source code, so that you don’t inadvertently violate someone else’s IP.

Java technologies also tend to have good open-source support. This is a side effect of the maturity and multi-implementation (“run anywhere”) approach.

Microsoft now makes the source code of the core libraries available for usage under their MicrosoftReferenceLicense?, and VisualStudio can be configured to retrieve it from Microsoft’s symbol servers as needed – but viewing the code carries the same risk for project contributors (most notably the MonoProject) as viewing Sun’s code.

BusinessValue aspects

DotNet is more “agile” (put it mildly).(say what?) Its characteristic lead some to wonder whether applications are developed to prove the concept (of DotNet), rather than to achieve a return for the business owner, who happen to require a SupplyChainManagement solution that rely on a particular WirelessDeviceEnterpriseComputing? implementation.

With JavaPlatform, the move is more “orderly” (put it mildly).(what?)Business owners are already redirected to the NextBigThing when an affordable Java solution comes out of the CommunityProcess?.

At this moment, owners of LegacySystems are wary of conversion to either platform, and BigBlue with its MiddleWare dominance is not complaining.

— PlainEnglishPlease

Client-side tool for ProgrammingOnHandHelds with MicrosoftWay constraints

Functionalities (including performance) that can be delivered using DotNetCompactFramework on WindowsMobile is very limited. Is there a better alternative using JavaMicroEdition, given the constraints where we are required to use WindowsMobile and DotNet servers? Or maybe someone have favorable experience on a toolset that is noncompliant with architecture of the above two StandardsStampingCompanies? (MS and Sun), yet can deliver superior results to staple solutions offered by the major software providers.

An acceptable tool will need hooks to client UI software such as a PocketWebBrowser, and can interface with addon package security solutions(e.g. kiosk mode “may be needed” in some usage scenarios). A reliable mechanism for persisting information “may be needed”, if WindowsMobile facilities cannot be used.

Advertisements

25 responses to this post.

  1. Posted by Nakshtra Choudhary on March 9, 2012 at 4:48 pm

    no compare please as both are the giants of his own community.

  2. Only a smiling visitant here to share the love (:, btw outstanding design .

  3. I wish to show my appreciation to the writer for rescuing me from this particular dilemma. After surfing throughout the world-wide-web and obtaining basics which are not beneficial, I figured my entire life was well over. Being alive without the presence of strategies to the problems you’ve solved as a result of this short article is a critical case, as well as ones that might have in a wrong way damaged my career if I had not come across your web site. Your own personal know-how and kindness in touching the whole thing was tremendous. I am not sure what I would’ve done if I hadn’t come across such a subject like this. I am able to at this time look forward to my future. Thanks for your time so much for your expert and amazing help. I will not be reluctant to propose your site to anybody who will need guidelines about this subject.

  4. I would like to express thanks to you for rescuing me from this type of setting. Because of exploring throughout the internet and getting techniques which are not powerful, I was thinking my entire life was well over. Existing without the approaches to the difficulties you’ve resolved all through this review is a crucial case, and ones that would have negatively damaged my entire career if I hadn’t discovered your web site. Your good talents and kindness in dealing with the whole lot was priceless. I am not sure what I would’ve done if I hadn’t discovered such a point like this. It’s possible to now look forward to my future. Thanks for your time so much for your high quality and amazing guide. I won’t think twice to refer your web blog to anybody who will need counselling about this matter.

  5. Sup mate, thanks 4 sharing but this page isnt vewable when using Chrome it is actually doubled up.

  6. salutations from across the ocean. interesting blog I will return for more.

  7. I view something really interesting about your site so I saved to my bookmarks .

  8. YouTube movies are famous in entire world, since it is the largest video sharing site, and I turn out to be too happy by watching YouTube movies.

  9. Web hosting getting cheaper with offering good functionalities.I have tried some Awesome web hosting providers and found them great

  10. [url=http://xxxfreeporn.ru/][img]http://xxxfreeporn.ru/pt/ded0939d9e.jpg [/img][/url] [url=http://xxxfreeporn.ru/][img]http://xxxfreeporn.ru/pt/384bba211f.jpg [/img][/url]
    [b]лучшая порнуха скачать бесплатно [/b] – [url=http://xxxfreeporn.ru/]порнуха онлайн изнасиловал [/url]

  11. [url=http://porn-for-free-xxx.ru/][img]http://porn-for-free-xxx.ru/scj/thumbs/0/446.jpg [/img][/url] [url=http://porn-for-free-xxx.ru/][img]http://porn-for-free-xxx.ru/scj/thumbs/0/890.jpg [/img][/url]
    [b]порно ролик смотреть пэрис [/b] – [url=http://porn-for-free-xxx.ru/]смотреть секс видео марии кожевниковой [/url]
    секс груповуха видео смотреть бесплатно
    порно видео русских девок бесплатно
    секс видео любительское смотреть бесплатно
    посмотреть бесплатное русское порно
    порно ролики бесплатно износилование
    [url=http://riviera.com.ua/forum/forumdisplay.php?fid=7]порно инцест русское [/url] – [url=http://error.pipni.cz/member.php?action=profile&uid=30455]смотреть онлайн порно домашнее видео [/url] – [url=http://www.ipacbc-bgrs.eu/bul/pages/memberlist.php?mode=viewprofile&u=205446]трахнули жену порно русское [/url] – [url=http://www.mytop100sites.com/cgi-bin/yabb2/YaBB.pl?action=viewprofile;username=6A455E495E594558595E4A2C0]бесплатные русские молодежные порно ролики [/url] – [url=http://www.tomnuttin.be/blog//permaPost.php?id=7]бесплатное русское порно лучшее [/url]

  12. [url=http://porn-for-free-xxx.ru/][img]http://porn-for-free-xxx.ru/scj/thumbs/0/306.jpg [/img][/url] [url=http://porn-for-free-xxx.ru/][img]http://porn-for-free-xxx.ru/scj/thumbs/0/429.jpg [/img][/url]
    [b]порно ролики 3d онлайн [/b] – [url=http://porn-for-free-xxx.ru/]смотреть семейные порно ролики бесплатно [/url]
    порно ролики смотреть бес
    смотреть порно ролики онлайн волосатые
    русское порно +в рот онлайн
    смотреть бесплатно видео секса трансов
    мульт порно ролики
    [url=http://www.obtsuod.org/fourm/index.php?action=profile;u=25228]девственницы порно русское смотреть [/url] – [url=http://podrugam.ru/]порно игры +на русском языке [/url] – [url=http://www.getofftube.com/vid.php]порно видео русских геев [/url] – [url=http://bouya.nasse.net/zboard/zboard.php?id=lecture&page=1&page_num=20&select_arrange=headnum&desc=&sn=off&ss=on&sc=on&keyword=&no=23&category=]лучшие порно ролики +без регистрации [/url] – [url=http://www.hugumall.co.kr/front/php/product.php?&product_no=689&main_cate_no=196&display_group=]порно ролики лезбиянки [/url]
    [url=http://progresskolomna.ru/user/LayelveSysles/]скачать русское порно мам [/url],[url=http://rascaz.com/user/Peltemelm/]смотреть секс извращения видео [/url],[url=http://www.hicq.ru/user/insotoGuisk/]секс секс секс порно порно видео смотреть сейчас [/url],[url=http://xxxusde.com/user/Tulaglugtiext/]порно отец трахает дочь русское порно [/url],[url=http://mebelmontaj.ru/user/AssisypusiA/]массаж порно смотреть онлайн ролики [/url]

  13. Но тут меня просто как будто перемкнуло… Я сам того не ожидая от себя сказал ей, что могу предложить ей нечто наверняка для нее необычное на что она правда может и не согласиться. Лена молча дала понять, что это ее заинтриговало. Я предложил ей связать мои руки. Она внимательно, с легкой улыбкой посмотрела мне в глаза. Я прочел в них, что она почти не ошарашена этим предложением. Видя это я стал уже смелее ей объяснять, что связав меня она может сделать со мной все что угодно. Я буду выполнять все ее желания и приказы. Буду, попросту, ее рабом. Почему-то я не прочитал в ее глазах какое бы то ни было удивление. Скорее наоборот! Она еще с несколько секунд посмотрела на меня своими коварными глазами и спросила. – [url=http://vsepoxui.ru/]порно видео изнасилование в лесу [/url] – [b]большие красивые попы и сиськи [/b]. Мы пили кофе в нашей небольшой гостиной с окнами в сад. Я почему-то волновалась, много болтала о разных пустяках, а немногословный мужчина внимательно разглядывал меня, будто видел в первый раз. Я смущалась под его пристальным взглядом, чуть-чуть робела, но не могла остановить свою болтовню. Меня остановил сам Саид. Он вдруг будто что-то решил для себя, внезапно пересел ко мне на диван со своего кресла и ласково положил свою смуглую руку прямо в центр разлетевшегося на моих коленях подола платья. Я сразу замолчала ив комнате наступила тишина. Мы молча смотрели друг на друга, а рука Саида медленно гладила сначала мое колено, потом выше, и дальше. Я испуганно глядела на его чеканное лицо – твердое, будто высеченное на медали. Лицо Саида было совершенно невозмутимым, только в уголках рта пряталась еле заметная улыбка, да глаза светились нетерпеливым ожиданием. “Инна” – вдруг сказал он и крылья его носа хищно вздулись – “Инна, раздвинь ноги, мне неудобно”. Кажется, это были его последние слова за этот день. Потому что я, как завороженная его взглядом, раздвинула колени, и позволила Саиду стащить с меня трусики.
    [url=http://vsepoxui.ru/]фото большие жопы попы [/url] – – Однажды испачкала – теперь чисти! – сказал Сергей. .
    [url=http://rehab.kuzspa.ru/memberlist.php?mode=viewprofile&u=20565]бесплатно порно ролики старухи [/url]
    [url=http://bodytuning.com.br/forum/index.php?action=profile;u=32212]порно мультики смотреть онлайн [/url]
    [url=http://medved.org.ua/user/nusneptviasse/]изнасилование порно секс видео смотреть [/url]
    [url=http://forum.transech.com/memberlist.php?mode=viewprofile&u=23739]смотреть порно фильм русских мам [/url]
    [url=http://papayamilkshake.com/forum/memberlist.php?mode=viewprofile&u=29530]порно ролики оргии бесплатно [/url]
    [url=http://joomport.com/user/Nusequige/]красивые порно ролики [/url]
    [url=http://www.forum.zernom.ru/member.php?u=111469]порно ролики смотреть лесбиянки [/url]
    [url=http://forum.thienlongvosong.net/member.php?1479-UnioniUnlably]смотреть порно ролики лизать пизду [/url]
    [url=http://ikmkmkm.net/skin_build61/bbs_list.php?unsingcode1=1185858166&unsingcode2=1185859331&code=qna&boardT=v&board_data=aWR4PTIyJnN0YXJ0UGFnZT0mbGlzdE5vPSZ0YWJsZT0mY29kZT1xbmEmc2VhcmNoX2l0ZW09JnNlYXJjaF9vcmRlcj0=%257C%257C]смотреть бесплатно индийские порно ролики [/url]
    [url=http://ajobs.ru/user/illinamow/]зоо порно смотреть [/url]

  14. Around whichever park you are likely to, there are usually hotels(not a park hotel), just a hotel before you get on the park ground.. & some of them have little places next to them like it will say “tickets at a cheap price” on the window or something. Try those places or sometimes even hotels can notify you where those little shops are.
    Have Fun!

  15. [url=http://online-porn-movie.ru/][img]http://online-porn-movie.ru/pt/2279c12f15.jpg [/img][/url][url=http://online-porn-movie.ru/][img]http://online-porn-movie.ru/pt/0c77b358bb.jpg [/img][/url]
    [url=http://online-porn-movie.ru/]негритянки голые порно [/url]. – Также…. Жаль, что у тя перевелись опять четвертой дырочки, а то мы алчность и ее те открыли,- хихикнул Колян… Данила хихикнул и недуманнонегаданно скоро придвинулся ко мне. Я оторопела. Эпидемия внизу живота нечаянно засигнализировала об опасности. Все я не успела отскочить, якобы Данила обхватил меня руками, скоро развернул и прижал к своему телу. – Зачем она тебе [b]порно негритянки минет [/b] – [url=http://online-porn-movie.ru/]негритянки порно ролики онлайн [/url] В это эпоха мои ножки взлетели много то вверх, и в киску стал запасаться часть Коляна… У меня напрасно вырвался шум, я задергалась, желая избежать давящей силы, только стона не получилось, потому сколько в ротике во всю хозяйничал причастник Владимира…
    [url=http://online-porn-movie.ru/]порно без смс служанки [/url]
    [url=http://vk.com/club35487393] http://vk.com/club35487393 [/url]

  16. I have been looking for that facebook font. many thanks for it

  17. Can you email me with a few tips on how you made this website look this awesome, I would be thankful.

  18. How do you make your blog site look this sick! Email me if you can and share your wisdom. Id be thankful.

  19. Is it okay to insert a portion of this on my webpage if perhaps I submit a reference to this web page?

  20. The design for the weblog is a bit off in Epiphany. Even So I like your web site. I might need to use a normal web browser just to enjoy it.

  21. I hope you continue to write because I share your views and I would love to read more of your material. This is awesome information. http://www.samsung1080phdtv.net/

  22. Hello. And Bye.

Comments are closed.

%d bloggers like this: