Xamarin for a small development team with .Net experience? [closed] - ios

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Xamarin is great in theory but would it be a good fit for a small team with .Net experience that is looking to build a consumer facing (not LOB) app for Android, iOS & Windows Mobile. This is not a build and forget scenario. The app would be under continuous development, and deployment via the three app stores.
Xamarin seems better suited for a large enterprise with many resources and a pool of .Net developers. I am looking for feedback from those who have actually invested time and money going the Xamarin route.
Although I feel a small .Net team could be more productive in the short term with Xamarin, I have the following reservations that have not vanished through experimenting with Xamarin or through reading countless docs, articles and comments.
Hitting hard roadblocks after investing months on development and finding it very difficult to get the help needed to work through the issues. i.e small online community and expensive training and support options.
Xamarin being unable to do something that can be done natively.
Investing in Xamarin at the cost of not actually learning objective C (Java not a real concern).

This is similar to the many of opinionated questions about Xamarin vs full native. If you have no obj-c/java developers and only .net developers, then go xamarin. If you want a single code base and not have each app in a different language, go xamarin. They are pretty darn good at having support the day that iOS is released.
Search on here for all of the other questions about it to see peoples' pros and cons lists.

I have gone through Xamarin route and I do development on C# for many years. I do Java and learned Objective-C to develop on iOS. Right now I do it alone or at most with some friends , so it is like the small team scenario you described.
I would not go on any other route for some reasons:
Needing to deploy on more than one platform and do each one on a different language is something I dislike
Xamarin exposes all the native APIs on each platform, so I am at no loss
I can access third party native libraries on each platform with ease
The non-native issue is not a issue for me for the byte-codes are native on iOS and there is a small Runtime on Android, but on both cases the performance is not at loss
I have done some basic and intermediary stuff using Xamarin and there were no lack of support from the community, documentation or from Xamarin
I am not getting to be an expert on Objective-C, as I don't develop using it, but I am learning the native APIs and their use the same way. You will use all the same Objects, methods (protocols and delegates) you would with Objective-C but now you have a different syntax (one which I love by the way)

Related

React Native limitations? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I don't know a lot about mobile development, but the possibility of writing native mobile apps in JS interests me a lot.
However, correct me if I'm wrong, but I dont think that React Native is about to replace traditional native code anytime soon. Why is this the case? What are the limitations of React Native, that prevents it from replacing traditional native development?
Any insight is much appreciated
At Facebook we're excited about RN for a few reasons:
Development velocity - refreshing is much faster than compiling, especially for big complicated apps
Separation of concerns - Experts on each platform can build high-quality native infrastructure and product developers can focus on their apps
Easier education - Developers can learn ES6+React once, and then build apps for iOS, Android, and of course the web
We used React Native to build the Facebook Ads Manager app for iOS, which is a pretty complicated app. It is working for us, but it probably won't work for everyone. This is a new technology that you should use at your own risk. Although we are working hard, it is not perfectly stable yet

Compile Objective-C On An Apple Mac Server [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 8 years ago.
Improve this question
As ,AFAIK, there is no way to compile Objective-C on a Windows machine. Would it be reasonably easy to set up a Mac server that compiles everything for you.
I am writing a game making system and it generates Objective-C code for you and creates an XCode project file. I was just wondering if I could give users the ability to compile there projects through server.
Could I setup a server that compiles XCode reasonably easily or are there services already available which I can direct users to that already do this?
I am aware of DragonFireSDK but that is for DragonFireSDK and not for third-party software, ASFAIK. I would think that they would try to make you buy DragonFireSDK to use there server for compilation.
Please note that I do not expect to find any servers where they compile Objective-C for you but I am hoping there are paid services that do this for you.
Please not I have literally just about no knowledge or experience of servers and/or server programming.
Thanks
Recently, I was looking to do the same thing. I develop for jailbroken devices. In our community, lots of people that can't afford Macs use Linux for building their projects. I see it quite a bit.
Clang/LLVM and Apple's ld64 are used to compile and link Objective-C projects. Luckily, all three are open source, meaning that you can use them on just about any UNIX-based OS. (I think Clang/LLVM supports Windows too, but I doubt ld64 does)
There are many toolchains people have put together to build iOS projects on non-Mac operating systems. You can Google them.
Darling
My personal favorite is the Darling project. It is similar to Wine in that it allows you to run Mac OS X binaries on Linux. When used in conjunction with Apple's toolchain that comes with Xcode, it works wonderfully, much better than any other toolchain. Also, since Apple has yet to commit arm64 support to Clang/LLVM (it's still closed source), this method still allows you to compile for arm64. It's also pretty reliable, in that you'll be able to update your toolchain the second Apple releases a new version, without having to wait for the source code.
I use Darling in my server for copy protection. When someone purchases my product, my server builds a copy specifically for them, embedding their device information in it. That way, if it is pirated, I can see "who dun it". It currently builds 5-6 copies a minute when sales are high, and so far, it has handled the strain just fine.
I've written a (somewhat long) tutorial for setting up Darling on Linux. It's targeted toward jailbroken development, but I'm sure you can adapt it to suit your needs.

Where should an absolute beginner start? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am completely new to writing code and am slightly confused by all the different languages. My main goal is to build websites and apps for iOS/OSX.
Which coding languages should I start with?
Here is a previously asked question which may be of use to you.
If you find that it is a bit over your head, you could start by learning the basics of HTML/CSS/JavaScript at W3Schools or by learning broadly applicable programming skills at Codecademy.
For iOS/OSX it would be a good idea to learn Objective C and get familiar with the different frameworks provided by Apple.
For building web sites, all you need is a text editor and a good introduction to HTML/CSS. If the web site should be dynamic (i.e. some content should be created when the web site is retrieved) PHP might be easy to learn and some JavaScript knowledge couldn't hurt.
Please note that applications are different from web sites! You can build web sites that look like applications and are accessed through the browser - "native" applications can only run on the device, not through a browser.
So there's no such thing as "web sites for iOS/OSX".
My main goal is to build websites and apps for iOS/OSX.
You need to define if you want to go native (objective-c + Cocoa/Cocoa-touch) or websites (HTML + JS + CSS). Which one you would choose is kind of a tricky question on the current standards. It really depends of the project and the client (sometimes even them don't know what they really want). If you are able tell us what are your goals in learning them, I can try to advise you better.
I would start with basic c because its what everything is built on. it teaches you the basic like int's, variables, pointers ect., then you could move into object oriented programing
(for other languages as well as ios/mac osx programing)
or move straight into objective c. if you want to design and build mac os x apps you need to know c, objective c, then move into the newly announced "swift" apple released this summer, they are all object oriented.
if you want to build web applications like facebook, twitter, google, ect. then i suggest php and mysqli (mysql is discontinued). you can implement a lot more than you think. you can also do object oriented in mysqli and php but you can also do it "procedural style".
be aware that ios/mac osx is a lot harder that html, css, php, and mysql.

SDK: What is it exactly? How it could be useful? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
SDK: What is it exactly? How it could be useful?
Is it necessary for a developer?
Thanks
The acronym SDK stands for Software Development Kit. The term software development kit is generally used to refer to a set of resources made available by a platform vendors to enable development on that particular platform.
The contents of an SDK are very much dependent on what is neccessary to give developers in order for them to successfully build software for that platform.
Typically an SDK will include:
API and / or achitecture dcumentation:This typically includes information such as class and method documentation and code samples to demonstrate the use of each method or class.
Library Files
Any binary or source file that is neccessary or helpful to developers using the platform. For example, the Windows SDK includes windows.h which is the main header file for Win32 development.
Develoopment Tools and UtilitiesApplications created by the platform vendor in order to assist developers in creating applications. These may include compilers or other tools such as emulators and debuggers to enable code to be writen and tested, as well as other applications which are non-essential but useful in software development.
Sample Applications
These are complete, usually small, applications written by the platform vendor in order to demonstrate some specific aspect of the platform. These applications often come with source code to help the developer better understand how the application is using the platform.
SDK stands for Software Development Kit. It is essential for a developer to have the SDK for the technology he/she is working on.
For example, Qt SDK contains Designer, Assistant (documentation) and Qt Creator (IDE); and also includes qmake and libraries for developing Qt software.
SDK = Software Development Kit
It's a set of tools aimed at developing software for a specific platform or a specific API.
Sometimes it's needed, when it's the only way to get access to the platform/API at all. Other times it's not strictly neccessary (for example when a compiler already comes with the operating system), but it usually makes developing easier.

Using Lua for web development? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
What issues or gotchas will I run into if I develop web applications in Lua; is there anything I should be aware of before starting?
Any experience with developing Lua web applications?
The web application framework based on Lua that gets a lot of discussion in the Lua community is the Kepler project. The Kepler team provides integration with web servers (especially Apache), a web server of their own, useful modules, and a working MVC application framework called Orbit.
Several other projects work with or on top of Kepler's foundation. A prominent one that demonstrates that Kepler can be used for real work is Sputnik, a very flexible and extensible CMS that functions as a Wiki out of the box but which can be extended to do many other things.
Speaking from personal experience, I built a control interface for an embedded system using Kepler's Lua Pages to render and process the forms and reports without much hassle as only my second or third real Lua project. That system is still in use and I would do it again.
take a look at http://openresty.com/ (nginx and lua/luajit, async)
Go ahead and give it a shot! Lua is a very nice language.
Another MVC framework based on Lua is also Luci.
Interesting concept. I think one of the things you need to consider is which webserver do you plan to use? I think the webserver support for Lua would be flaky at best, no offense to anyone involved but its just not a common web platform.
With that said, however, the Lua Libraries And Bindings lists quite a few components that you could seemingly leverage for your efforts. I looked the list over and all things common to the web are there: databases, regex, network, zip, crypto, xml, images, etc. There's even a couple of web frameworks, so perhaps this is less rare than I thought?

Resources