I'm a network admin who wants to start developing windows apps. I have a Masters in IT, but no coding experience. I had to take a C class, but didn't understand it. Should I learn VB or C#? I understand C# is superior, but I'm new and don't understand the concepts. I know they both use .net and I'm wondering if VB would be a good way to start or a waste of time? Thanks
Sent from my RM-893_nam_tmous_201 using Tapatalk
First of all, if you remember *anything* from C, C# will be more familiar.
Second, in terms of an employable skill in the job market, C# is more valuable; not only is it in greater demand in general, it's also closer to both C++ and Java, both of which are in very high demand.
Third, while VB.NET is a perfectly reasonable modern language with plenty of nice features, that modernization + same anachonisms it has held onto has led to it reaching a state that I consider no easier to learn than C#, so between the two of them I'd certainly recommend C#.
I can not say that I have personally done a lot of vb development, but based upon what I have seen of it, I would certainly recommend c#. C# is quite similar to other powerful languages such as c++ and Java, so after developing a solid understanding of c#, getting familiar with these other languages will be a breeze. It provides the best integration with the .net framework, and has simple and easy to understand syntax. I think that c# is more of a replacement for VB than anything anyways, and as such, learning c# is the best way to go:laugh:
If this message helped you, or you appreciate me taking the time, then smash that thanks button like a crazy spider running across your floor
rootfan said:
I can not say that I have personally done a lot of vb development, but based upon what I have seen of it, I would certainly recommend c#. C# is quite similar to other powerful languages such as c++ and Java, so after developing a solid understanding of c#, getting familiar with these other languages will be a breeze. It provides the best integration with the .net framework, and has simple and easy to understand syntax. I think that c# is more of a replacement for VB than anything anyways, and as such, learning c# is the best way to go:laugh:
If this message helped you, or you appreciate me taking the time, then smash that thanks button like a crazy spider running across your floor
Click to expand...
Click to collapse
Java and C# only have in common the common object class and similar syntax to some extend.
C# is way more powerful than java and comes close to C++ as far as complexity is concerned.
C# all the way. The way it is built and the constructs of the language itself, makes it easy to learn and enjoyable to code with. And I've use both Java and VB in a little enviroment
Functionally, there's no difference between C# and VB.NET. Anything you can do in C# you can also do in VB.NET. The syntax of VB is much easier, and is overall more easily picked up, but C# is more common, and more useful in the industry.
If you look at code samples a lot, and use C#<>VB.ET converters, you can pick up the syntax of both of them, so even if you found a code sample in VB you'd be able to work out how to code it in C# easily.
I used to hack exclusively in BASIC and VB. Now I work pretty much exclusively in C# (and the very similar powershell) and would encourage anyone else to use it too. It's FAR more useful than anything BASIC.
VB.NET and C# are virtually identical in capability (the both compile to MSIL that is processed by , so in terms of what you can do with them, they are equally useful. The main differences are how easily you can do certain things. With that said, though, C# (as a "C-like" language much like the very widely used C++ and Java languages) is more professionally useful that VB.NET (which is a "BASIC-like" language, a language family that is dying out in the professional world).
C# is almost identical to Java, and Java is very popular now. If you learn C# very well, learning Java is a matter of hours away and then you can easily port apps to android too
Related
is it possible to port iphone apps over to android?
Depends on what you mean by port. If you mean "completely rewrite to operate in a similar fashion" then in most cases yes. If you mean take the iPhone app and run it through some kind of magickal program that converts it into a functional apk... no.
yes by port i mean completely rewrite the the code to allow a program to run in a similar fashion. is that hard to do?
ninjavampire said:
yes by port i mean completely rewrite the the code to allow a program to run in a similar fashion. is that hard to do?
Click to expand...
Click to collapse
"Hard" is a pretty subjective word.
iPhone apps are written in Objective C with the Cocoa framework. Android is written in Java with subsets of the Java framework libraries and specialized Android frameworks. While they're not completely disparate, they are still distinct languages. The ease of moving from one language and development framework to another depends on the experience and capability of the programmer and the complexity of the codebase (e.g. it will probably be easier to port a tic-tac-toe puzzle than a rpg). Also, the more generically and modularly a codebase is written, the easier it will be to move to a different platform. Some applications are the sort that need to be supported long term (mail clients, social networking apps, etc.) These will generally tend to be written with a mind for long term maintainability and thus be written more cleanly and modularly. Otoh, apps like games and single-purpose apps tend to not be written with long term maintenance in mind. They may be written more sloppily and thus be more difficult to port without a complete ground up rewrite.
In the end though, for most development studios with real paid programmers, it's not a matter of difficulty (most modern programmers have atleast some Java knowledge) but a matter of business. In short, business development staff will calculate how much potential profit there is to be had from various options for a potential future project and typically pick that which is the most profitable. For multiplatform developers, generally that means creating cheap one-off iphone apps. Some of the most profitable apps are really simplistic things like fart apps or really simple games.
ok thank you for your help i understand it a lot clearer now. really wish i knew more than just basic javascript...
ninjavampire said:
ok thank you for your help i understand it a lot clearer now. really wish i knew more than just basic javascript...
Click to expand...
Click to collapse
It's never too early or too late to start learning a new language, if you have the will and time. There are plenty of self-teach Java guides online.
Edit: I meant a programming language, ofc, but I just realized that that also applies to human languages as well.
This really should be in the Dev section, but for fear of the thread getting trashed, I put it in Q & A. If this question has been posted, don't flame me...just point me to the link.
Simply, I want to learn to code in Linux. I now know next to nothing. I have learned most of the shell commands and such, but where do I go from here.
What language is Android in (Java, I presume. But isC++ useful)? I can find tutorials and I am intelligent, so I should be able to learn some on my own. Where do I start?
I have found several interactive tutorials:
1. Learning to program in C++
2. Learning to program in Java
Which one to pursue? I don't want to be Cyanogen or anything, but can't stand to be left out of the loop.
Will
Android apps are built in java. Start here for the SDK and plenty of useful info to get you going:
http://developer.android.com/index.html
Developer.android.com is a good place to start.. its modified form of java called dalvik, but java none the less. C is good for terminal apps, and Im pretty sure you can include some c in apps now too
the language is the least thing you should worry about though. Pick up a book on programming for dummies (i mean it, not trying to be mean or anything) or something that teaches you the basics of programming. There are several conventional approaches that we use to program. You can dive head first into Java, or C++, etc, but if you don't yet understand program flow (sequential, looping, or branching) or about data types and structures, objects, etc, you'll still be at a loss. Programming is a very general concept and once you get the hang of it, then you can pick whichever language is the best tool for what you'll be doing (in this case, google's android implementation of java).
Also pick up some HTML and javascript, both combined will make it a lot easier to understand XML once you get to it, and for some of the shell scripting associated with putting out roms, give using any linux distro as your real main OS a try for a few months. It's frustrating at first, but you'll learn so much trying to learn how to use it.
Jubeh,
Exactly the answer I was looking for. While thankful to the other posters, I think they understood me as having some knowledge (I tried to dive right into the SDK and it made about as much sense as Hebrew).
I am downloading a book called C++ for dummies and another by O'reily.
Let's see where this leads....I hope it is something that if I am dedicated enough can be learned outside a classroom.
Thanks all....
----
Removed:
shouldn't be posting warez, alritewhadeva.
Anyway, I'm also studying several android-related topics right now. I took like two computer science classes in highschool (first was intro to programming in basic and then advanced concepts in c++) and then did scheme programming for my first semester in college for bs-cs and java for my data structures semester, and then I quit school . I also did some self-taught learning in HTML (back when we actually made pages in HTML), javascript, and java applets.
Anyway, I hadn't touched any coding since about 6 years ago and now with android i'm trying to get back into it, but I've pretty much forgotten many things (syntax mostly, concepts stick with you), so right now I picked a book for programming for dummies too. I'm almost 3/4 done in 2 days because I know most of that stuff, but the refresher is nice. I plan on picking up a C++ book next, to get up to date with the current implementation, and because once you understand C++ (it's high level enough and low-level enough), java and other object oriented languages are a breeze to understand. After it I plan on catching up to JAVA 6, and then hopefully dive into android's java. It's a lot of work and requires dedication when you're doing it on your own, but it's also rewarding (both personally, and in that you could always get a job with just C++ that pays well enough for limited knowledge)
jubeh said:
shouldn't be posting warez, alritewhadeva.
Anyway, I'm also studying several android-related topics right now. I took like two computer science classes in highschool (first was intro to programming in basic and then advanced concepts in c++) and then did scheme programming for my first semester in college for bs-cs and java for my data structures semester, and then I quit school . I also did some self-taught learning in HTML (back when we actually made pages in HTML), javascript, and java applets.
Anyway, I hadn't touched any coding since about 6 years ago and now with android i'm trying to get back into it, but I've pretty much forgotten many things (syntax mostly, concepts stick with you), so right now I picked a book for programming for dummies too. I'm almost 3/4 done in 2 days because I know most of that stuff, but the refresher is nice. I plan on picking up a C++ book next, to get up to date with the current implementation, and because once you understand C++ (it's high level enough and low-level enough), java and other object oriented languages are a breeze to understand. After it I plan on catching up to JAVA 6, and then hopefully dive into android's java. It's a lot of work and requires dedication when you're doing it on your own, but it's also rewarding (both personally, and in that you could always get a job with just C++ that pays well enough for limited knowledge)
Click to expand...
Click to collapse
How is it a ware? Ebook...
Removed link anyway.
Thanks for asking this question pinetreehater. I've searched for the answer and not really found what I was looking for. I wanted to ask this myself but, as you stated, I didn't want to get noob-bashed.
I have some programming knowledge. I took some of the older langauges in highschool *mid 80's* (basic (of course), cobol, and assembler). And was quite good at it. IMHO. But I didn't really follow it after that and have basically forgot all of it.
I have a question.
Once I've got the books. How do I practice using them on my pc?
So back when I was a teenager. I played around with vb. Wrote a couple very simple programs. A couple trojans using Winsocket ect ect. So I pretty much have no real direction with programming. I've always been the one of the group who "builds those pooter box thingamajigers". Lol, but hardware and software are VERY different. So I've been scanning the net and found a few good beginners java books. Got meh the pdf's, and I'm going to learn myself some java
So. One of these days. I may be able to contribute around here. With more than just words
[edit] I will be doing this is as a hobby, and maybe side projects. As I am a psych major.
Good Luck Zex....
Thanks man.....
Appreciate it
My auntie was learning java and used a programme called RoboCode. I think that has something to do with java. Try googling it. Basically you programme in java to make robots fight each other. Kinda cool. You should try it when you start a bit of java.
Oh and java apps would be good around here. Maybe Games??
I dunno.
Well good luck!!!
flyboy
well considering android is based from java. I figured I shall learn the ins and outs of it first. Before, I even try to mess with deving for our phones
native apps on android are in c++ though
Rudegar said:
native apps on android are in c++ though
Click to expand...
Click to collapse
What 'chu talikn' about, Willis? http://developer.android.com/guide/topics/fundamentals.html
I'm also learning Java as part of my A-level course, and man, loops are a ***** :-/
http://developer.android.com/sdk/ndk/index.html
ndk is c++
ndk == native development kit
I wasn't really talking about apps.
Also. Once I get the basics down. It'll be alot easier for me to understand the android sdk, and become familiar with it's api's.
Hi everyone!
Given the announcement of WP8, today, I noticed that there was not a whole lot of information of whether or not C# would receive a lot of support for developers.
I have started learning C# as my first programming language, but I am wondering if I should jump ship and learn C++ instead to write apps for W8 and WP8.
Should I? I know C++ has been popular for a while, but can anybody guess as whether MSFT is pushing developers to the C++ route and away from C#?
Thank You!
CodyNunes said:
Hi everyone!
Given the announcement of WP8, today, I noticed that there was not a whole lot of information of whether or not C# would receive a lot of support for developers.
I have started learning C# as my first programming language, but I am wondering if I should jump ship and learn C++ instead to write apps for W8 and WP8.
Should I? I know C++ has been popular for a while, but can anybody guess as whether MSFT is pushing developers to the C++ route and away from C#?
Thank You!
Click to expand...
Click to collapse
C# is definetely not being pushed away. C++ requires a lot more work than C#. You should not stop learning C#, but maybe consider learning C++ after you learn C#.
I absolutely agree with the comment above. C++, however, can let you produce far better optimized apps at the cost of a longer coding time.
Sent from my GT-I9100 using XDA
Microsoft said during the Event that they encourage the use of XAML/C#, VB.Net for regular Applications. For Games they encourage People to go with C++ and DirectX. There are currently community projects aiming for kind of a follow up to the XNA framework allowing people to write Games for Windows 8 Metro using C# and DirectX which due to the shared APIs should enable the same for WP8 but I don't know how far along they currently are.
For highly resource intensive computations you might want to leverage the C++ performance benefits but overall C# is fast enough for most use cases and development is speedier and A LOT less prone to errors.
Thank you, everyone! If any more information comes up about the limitations of c# or c++, I would appreciate any ideas opinions or input!
JavaScript also joined the game.
I like C#. Performance doesn't sound like good excuse to abandon it for c++ as hardware is becoming faster all the time.
Sent from my GT-I9100T using XDA
eyal-f said:
JavaScript also joined the game.
I like C#. Performance doesn't sound like good excuse to abandon it for c++ as hardware is becoming faster all the time.
Sent from my GT-I9100T using XDA
Click to expand...
Click to collapse
Well, the discussion about the performance between C# and C++ is pretty old. Just bing it and you'll find tons of pages. In my experience you can get very fast algorithms in both languages when you plan your app right. I'd suggest C# to learn as it is "safer" to start with. You don't have to care about garbage collection and memory management for instance. Also, you can easily reuse code in other apps. If you invest time in learning C# you will get more performant apps than by learning only a bit of C# and a bit of C++. And you can even write good games in C#. You can really get pretty darn high performant apps in C# if you optimize them right.
ChrisKringel said:
You can really get pretty darn high performant apps in C# if you optimize them right.
Click to expand...
Click to collapse
You've read my mind. Personally, I would also not bother whit c++ when you don't necessarily need to.
And game devs should keep in mind that using xna (c#) is the only possible way to get their games also on the xbox (And hopefully xna will get an updated version for WP8 with custom shader support and all that stuff)
XNA seems to be in pretty much the same spot as Silverlight. Microsoft is still supporting it but there is no news at all on future development. It seems development of XNA was stopped. Currently people are trying to develop replacements.
Most Apps will wok just fine using C# or JavaScript. For some things you will need to use highly optimized Algorithms. Had a discussion once with a Dev who did realtime Audio analysis on several platforms using fast fourier transformations and after all efforts on the Forum to optimize the C# code the C++ version was still twice as fast. That is simply due to some of the code security features. When accessing an array in C# the language will always do an out of bounds check to perhaps raise an Exception while C++ simply reads whatever is at the pointer position even if it is in memory behind the array as long as the memory is allocated.
By not doing these checks alone it reduces computation and given the limited processing power sometimes this is necessary to get things working decently on a mobile device.
Still there also were several benchmarks were C# code was able to outperform the C++ implementation (especially object heavy code).
So if you absolutely must have the highest possible performance C++ is the way to go. It's similar if you want to port your code accross platforms as you can do C++ for Android and iOS. In all other cases C# would be preferable as as it was said before it is more productive and less error prone.
You can use unsafe code in c# as well
chabun said:
You can use unsafe code in c# as well
Click to expand...
Click to collapse
To my knowledge not on Windows Phone. It would get rejected from the Marketplace. This might change with WP8 but we don't know yet.
Unsafe code also complicates things a lot because as soon as you directly manipulate memory you have to take care of it like in C++ because the Garbage Collector is out of the picture.
Most often it would be the easiest route to develop the performance critical code using C++ and then use that library from C#. This at least should be supported by WP8 although I can't remember where it was said exactly.
chabun said:
You can use unsafe code in c# as well
Click to expand...
Click to collapse
It's a lot better to simply use a C# UI to wrap C++ code. However, it's easier to just use C++ in that case
Sent from my GT-I9100 using Tapatalk 2
I bet every software development company, as well as freelance programmer, wants to keep up with the most emerging and trendy programming tools. The software programming and developing community is growing at a faster rate than ever before. Various new programming languages which are rising up are suitable for different groups of developers (beginners, intermediate, and experts) as well as for divergent use cases (mobile applications, game development, web application, distributed system, etc).
The question is, what are the best programming languages to adapt to your business in 2019?
Actually, every project requires different codebase and programming language. So it’s crucial for a software development company to always catch up with new trends and apply a wide range of the latest technologies in order to respond effectively to customers’ requirements.
With the sharing below, I aim to give you a good look at the best programming languages that will dominate IT market in 2019. And from there, figuring out which ones are fit for your business model or can be used in your software projects.
#1. Java
Being born over 20 years ago, after decades of growing and improving, now Java may be the most popular and prolong programming language worldwide. Java is mostly used for building enterprise-scale web applications because of its extreme stability. Many big enterprises have adopted it to their back-end systems.
Furthermore, Java is also broadly used in Android App Development. Owing to the fact that there are billions of Android users nowadays, an Android version is essential for any mobile app. Obviously, this results in the never-out-of-date importance of such a clever and convenient programming language like Java. For the most lively example, Google has created a brilliant Java-based Android development framework – Android Studio.
According to a survey by StackOverflow, Java ranked as the most favored programming language for six years in a row.
#2. JavaScript
Accompanied with Java, JavaScript is the “service-side” or “frontend” programming language. JavaScript is also a very popular language and widely applied to develop interactive front-end web applications and design animating websites. For instance, when you click on a button which opens up a popup, the hidden logic is implemented via JavaScript.
The best turn up of this language (also the main reason why I believe it will continue to grow) is its flexibility. You can use it to manipulate HTML and CSS, moreover, it is supported by every browser, which provides a great experience across browsers and makes it the ideal language for clients to use.
These days, a lot of IT companies, particularly startups, are using NodeJS, React, React Native which are JavaScript-based web development frameworks. JavaScript is everywhere and will likely remain one of the most popular programming languages in at least the next few years.
#3. Golang
Golang, also known as Go, is a new and easy-maintained programming language built by Google. Go perform excellent support in multithreading and so, it is being adopted by many enterprises that rely heavily on distributed systems. By the way, Golang is not really a friendly language for all system sizes, it’s more suitable for large-scale ones.
Between its ability of high-performance and multithreading, I have to mention again, Go is actually designed and developed by Google believe it or not, which is a really cool fact about the language. Golang was referenced as the “programming language of the year” in a ZDNet article written in 2017. And as everyone knows how big the “Google brand” is in the IT market, I think you can guess the continuously fast growing speed of this sub-brand programming language.
#4. C/C++
Saying in a metaphorical way, C/C++ is the bread and butter of programming. Almost every low-level system such as file systems, operating systems, etc. are written in C/C++.
Besides, C++ is also often used by most programmers due to the fact that it is extremely fast and stable. It provides something called STL – Standard Template Library. STL is a pool of ready-to-use libraries for a wide range of data structures, algorithms and arithmetic operations. This library support and speed up the language, make it a trustful choice in the high-frequency trading community as well.
#5. Swift
Swift is the primary programming language that is used to build iOS applications. It’s was first invented in 2014 and started to grow well in recent years, despite the short time it has to catch up with enormous competitors. Can’t deny the fact that now iOS-based devices are the most popular tech devices in the world. Apple iPhone, for instance, has made up a considerable market share and is always giving a tough competition to Android.
Not only is Swift speedy, but it’s also efficient. According to developers who are using the language, it’s quite easy to read and write compares to other mobile languages. Overall, it’s probably the best available language for mobile development. So there’s no doubt for a pretty bright future of Swift, and maybe much more.
#6. Python
Python is becoming more and more popular. It is known as a “general purpose” language. One of the great things about Python is, you don’t have to be a CS expert to code in it. It’s a perfect choice for beginners. You can pick Python for building almost anything. For examples:
Game Development
IOT
Machine Learning
Software Development
Web Development
Because of the flexibility and convenience of Python, I’m not surprised that this language is adopted by many IT businesses. It works great for almost any industry. In fact, Python was ranked as the most “wanted” language of 2018 according to the results of StackOverflow developer survey. If you don’t want to work solely with Python in the long run, it’s still a worth learning fundamental language. Personally, I don’t just believe that Python is one of the best programming languages in 2019, but the language of the whole near future.
Summary
JavaScript and Python are hot in the startup world. Most of them use NodeJS (JavaScript), Django (Python), and Flask (Python) as their backend frameworks. Python and JavaScript are kinda easy to learn, therefore they’re considered as the best programming languages to learn for beginners.
Java is famous in corporate companies. Many organizations use Spring (Java) as their web backend framework.
C/C++ and Golang are the top choices for developing low-latency and scalable systems.
Thanks? 0.o
Soo Java is still a trending programming language...Weird
I believe its Python