Skip to content

Latest commit

 

History

History
45 lines (38 loc) · 2.96 KB

Studies.md

File metadata and controls

45 lines (38 loc) · 2.96 KB

Studies.

Related to .net/java/nodejs

  • .Net

    • We primarily use .Net to make Windows applications.
    • Can also be used to make web apps ( Which I'm primarily working on! )
    • Console Apps for Windows are made using this.
      • What's the need for the Console App?
        • It is used for its simplicity. Why make a whole GUI just for a simple task, right?
        • It is lightweight, text i/o operations can be performed easily
        • Easily deployable over the cloud.
    • Generally considered to have strong security features, especially for enterprise applications.
    • Many packages are pre-made and built in to ship things faster.
    • It has a stronger focus on the Windows environment.
    • It often performs better in the Windows environment due to optimizations in the Common Language Runtime (CLR) and better garbage collection.
    • OOPS and strongly typed language with various inbuilt classes and features.
    • .Net core has been built for multi-platform applications
    • Supports multi-threading
  • Java

    • Java follows the "write once, run anywhere" (WORA) principle
    • Java is an object-oriented language, which promotes cleaner and more modular code
    • Java applications can run on any operating system with a Java Virtual Machine (JVM).
    • Historically, Java has faced security vulnerabilities, particularly related to its runtime environment.
    • Java includes automatic garbage collection, which helps manage memory allocation and deallocation.
    • Java has a vast ecosystem of libraries and frameworks that simplify development for various applications, including web, mobile, and enterprise solutions.
    • Java supports multithreading, allowing developers to create applications that can perform multiple tasks simultaneously.
    • This is particularly advantageous if you want to maintain a single codebase for multiple platforms, cz it uses JVM to run Java code.
  • C# vs Java

    • Java is designed to be platform-independent, allowing applications to run on any system with a Java Virtual Machine (JVM).
    • Java is the primary language for Android app development, making it essential for developers targeting the mobile market.
    • Both are mature languages, thus preferred for long-term projects
    • C# is generally used for the Windows apps more.
    • Java and C# have very similar syntax as they are both part of the C-family of programming languages.
    • C# is generally considered faster than Java, especially for memory-intensive tasks, due to its more efficient garbage collector
  • Node

    • Used for more I/O intensive tasks
      • I/O? operations which require more waiting from External resources, like databases, another API etc.
      • Ex: CRUD on dB, file operations, API Calls, Media Streaming from external sources.
    • But you need to think of ways which speed up the I/O processes to make the application faster.