tags:

views:

843

answers:

6

I don't know Java, only C#, and I need to make a simple program for Nokia N95 (Symbian 60). How i can make one? Is there any C# editor?

+3  A: 

In two words: you can't.

Symbian development requires C++, not C#, as (currently) there is no version of the Microsoft .NET Framework for Symbian. Also, this is unlikely to change.

The newest Nokia devices (e.g. the N900) use Maemo, which is a variant of Linux, and which should run the Mono version of C#. This won't apply to S60 or the N95, I'm afraid.

Jeremy McGee
Silverlight Mobile will run on S60: http://silverlight.net/learn/mobile/ It's not here yet though.
JulianR
Note this answer is wrong - see below for the correct answer
Malcolm Box
I know: I need OP to unaccept this answer before I can remove it.
Jeremy McGee
A: 

Silverlight 4 should be available for Nokia S60 platform (after Windows Mobile).

Check Silverlight for mobile. There you will find that SL for mobile was supposed to be available in 2009 (so they are a bit late). Also, listen Scot Guthrie keynote from PDC 09. I read somewhere that he mentioned Silverlight mobile (I didn't listen).

zendar
+2  A: 

Java is a very similar language to C#, and you can write Java ME code for Symbian devices, so that might be the easiest way for you. The native programming language of Symbian is C++, but Symbian C++ development differs from normal C++ and is pretty difficult overall, so since you only want to write a "simple program", I definitely would not recommend that.

For Java development, two IDEs are popular. NetBeans comes with ready-made support for building Java ME applications. For Eclipse, you will need to download the EclipseME plugin separately. And of course, you will need to download the appropriate SDKs from the Sun Website.

jk
There are loads of options for Symbian programming not just c++ and java as you suggest.OpenC, C++, Python, Java, HTML, Web Runtime etc etc etc..Symbian C++ is no more "difficult" (nor different for that matter) to "Normal" c++.
Dynite
I don't suggest that, I suggest that Java might be the best choice for someone who knows C# to write a simple program.
jk
+1  A: 

Depending on what you want to code, you might want to take a look into python. Nokia offers a python interpreter for it's symbian devices and it is much simpler than digging into Symbian-C++ (which differs from standard C++, and is rather hard on resource management).

As a matter of fact, I am a C++ developer and I have done some Symbian C++, but even with that experience I find myself looking into python (no previous experience with python) to write and test small symbian utilities.

The other option is going the Java path. Java is the closest option for a C# developer, and takes away the memory management harsh of C++ with a syntax that is close enough for a C# developer to just read.

David Rodríguez - dribeas
+1  A: 

Simple way to 'Write a program on Symbian' is to follow these simple instructions:

http://developer.symbian.org/wiki/index.php/Symbian_C++_Quick_Start

Dynite
+5  A: 

Sorry but the answer you flagged as correct for this question is wrong. It is possible to develop for the N95 using C#, it may just cost you some money.

See www.redfivelabs.com

This solution might not support the latest version of the .Net compact framework as fast as it is released on windows mobile but it certainly provides some C# support for N95.

Deployment might be a bigger issue than if you were targetting a runtime pre-loaded on the phone.

EDIT: oh well, so much for that. the correct answer WAS "you could" but it has just become an order of magnitude more difficult considering Red Five Labs has ceased its business activities as of 18th January 2010. It doesn't necessarily mean their Net60 product will completely disapear (the installed base doesn't evaporate overnight) but now would be the time to wait and see whether it survives in another form.

QuickRecipesOnSymbianOS
Well, there you go. I've deleted my incorrect answer.
Jeremy McGee
... or at least, I would if it hadn't been accepted as correct. @Gold, care to make this the accepted answer instead? Then I can delete my incorrect one.
Jeremy McGee