Which technology stack to choose

According to the criteria below , what is the best technology stack ?

  • Cross-platform (Linux / Windows).
  • Ability to run as a service (daemon).
  • Powerful object-oriented data access (O / R-mapping).
  • Support for multiple databases (MsSql, Oracle, MySQl, SqlLite, Postgress).
  • You can test the web application (unit testing and integration).
  • Reasonable or no development cost (including IDE and other tools).
  • Reasonable or free licensing (price of OS, database, etc.).
  • Very small development team (1-5 people).
  • Background Windows / .NET team.

I would easily choose .NET as a platform with ASP.NET MVC / NHibernate. I work well in .NET and have been doing this for about 3 years. So this is the easiest choice for me.

But there seem to be too many problems running on ASP.NET in Mono. I basically found them on the net. But I know:

  • different versions of Mono on different hosts.
  • different behavior of some objects on different platforms (Ayende wrote on his blog a while ago about this)
  • conservative garbage collector
  • legal issues with MS.

I especially like Ruby as a language, but I'm not too sure if it takes a lot of tricks to satisfy points 2, 3, 4.

As for Java, for some reason I just can't do it. Every time I have to think to write get / set instead of a property, I return to C #. I would do Java if there were no .NET 2/3.

So, 2 main questions:

  • Which language is best for?
  • What related technologies will be useful?
+3
5

, Ruby O/R. ActiveRecord ( Rails). O/R- Ruby , Java - , ActiveRecord method_missing .

Ditto - Ruby .

Ruby, Ruby on Rails ( , Windows/.NET). Rails JRuby ( Ruby JVM).

+4

:

  • Java (-)
  • JSF . JSF ASP.NET( Java # ), .NET- .
  • Hibernate/JPA ( )
  • Selenium, JSFUnit, JUnit, TestNG
  • Eclipse + -
  • PostgreSQL -
  • Linux
  • spring framework - , .
+7

java

  • Java
  • SpringFramework
  • Freemarker/Velocity
  • Hibernate
  • Eclipse + - [ Bozho;)]
  • MySQL -
+2

:

Python PHP Java, Linux Windows. , Ruby.

Framework

Django (python) Zend Framework (php)

, , Mysql, Postgresql, MSsql, Oracle.

Os

Choose everything you like best in management. Think about the time of training and the cost of a license. Since the proposed technologies are cross-platform, it does not matter.

+1
source

Source: https://habr.com/ru/post/1724467/


All Articles