New to Ipad, familiar with SQL, how to get started - sql

I have been a SQL writer using MS Access some years ago and have been given an IPad upon my retirement. I want to create simple database driven apps using SQL. I have downloaded SQL Lite editor from the Apps Store but it seems to have a big chunk of something missing.
Question. Do I need to have an Apple computer as a workstation and then copy to the iPad, or can I use my Windows 7 PC as the authoring tool.
Where do I find the tools for creating the graphics to enhance database search results?
Do I need to use C or C++ to create the application, as I never got around to learning it.
Odd questions I know, but google searches seem to leave me totally in the dark on this topic, yet I geel that most app's seem to revolve around some database manipulation. Would be helpful if I could find a series fo links somehwere.
best regards
Kaela

Hi
In order to develop native applications to ios devices you need the XCode environment and knowledge in objective c, its a bit odd and there are examples.
for that you will need a mac or run the mac os on a virtual box.
You can also create a non native app such as webapp using HTML5 and js and then import it to the XCode using Phonegap.
By using this method you will be able to create apps for many devices such as android and more and all you will have to do is to import your HTML5 and js into the supporting environment.
Just to warn you about these kind of apps, app store allows only native apps and its better to make native app because it will pass every inspection they make.
Thanks

yes, to develop on Apple's engine, you have to had an Apple computer. However, you can mount a virtual machine running OS X, but it's illegal and very complicated (but doable).
The "bible" for mac developers is here : http://developer.apple.com/.
It's recommanded to write your application in Objective C.

Related

What software would you recommend for making a simple list-creating app for iOS and Android?

So, my aunt wants me to make an app to help people create lists and be more organized. It would also have pre-made lists and tips that occasionally appear. We both want it to be for iOS and Android. Does anyone have recommendations for what software I could use to create something like that? One other thing to note: I can't use XCode because I'm not a mac user. Thank you for your input.
This question depends a lot in preference and personal opinion...
Unity is my personal favorite tool to deploy in multiple platforms and even if its a game engine I have used it for simple user interface aplications with very little effort and bug count... the withdrawals are that you use a "lot" to make so little... the whole physics engine does nothing and the apk weigths at least 20Mb ... but its a very simple tool that could do the job in a couple of days having little experience and thats what i like about it.... theres also Xamarin C# , Android studio... React.. Depends a lot on your liking...and personal preference.
If I were you, I would go for React Native it is a mobile apps building framework using only Javascript!
Here is a showcase of real-world apps using RN: Who's using React Native?

Utilizing resources of separate apps on OS X

Is it possible to write software on the mac that will launch other separate applications, tell them what to do, etc etc? What language would best suite doing this? (Assuming it's Mac specific).
I'm fairly new to Mac programming, though I have a strong background in iOS. I've seen multiple companies in the past write a script that will cross-compile source code, basically you run your app from the Terminal and it floats around your OS, grabbing what it needs to compile and spits out an Xcode, Eclipse and Unity-ready versions of your source code. I'm familiar with iOS, and how it crashes the second you try to use another apps resources. That is what leads me to the original question:
Is it possible to write software on the mac that will launch other separate applications, tell them what to do, etc etc? Specifically tasks like launch Safari, take a screenshot, launch disk utility, launch mail, email screenshot. I know that OS X allows you to play around a bit more than iOS, but the question is how much.
It's still rather up to what each app will let you do, rather than just being able to do anything, but take a look at OS X's scripting/automation abilities. Primarily this is accessed through AppleScript, but there's now a JavaScript frontend as well (new to Yosemite).
If you're looking at building a native application that takes advantage of other applications, the same scripting abilities can also be reached via the Scripting Bridge from Cocoa (Objective-C/Swift).

Use phonegap or go native?

I'm about to make an application for ipad that has the following specifications:
download JSON (or xml) from server
download short audiofiles from server (locations are in the JSON from above)
save these to the iPad for offline use.
based on these files the user gets to do some exercises
user progress/results need to be saved to the device so they can continue where they left off the next time they launch the app.
My question: Can this be done with only html/css/jquery Phonegap? Or should I go native and make this all in Objective-C? Or can I combine phonegap and Objective-C?
Now I'd like to know how I can save a json file on the device for offline use.
Also I'd like to know how to download audio (or images or whatever) and save those to the device.
This can be done with PhoneGap/Cordova and its HTML5 approach.
If it is iPad only, then go native.
Your app's high level requirements do not sound too complicated. For more complex apps always consider that facebook just went native for iOS because of their performance issues. In the end, this may be the way to go for a number of apps. PhoneGap or other HTML5 or cross compiling approaches for 1000+ devices plus native solutions for the market leaders.
It depends on what level UX your are aiming for and how you think your app may expand in the future.
If you need full control over the user experience, then you will need to go native. All the physics involved in scrolling/swiping will be done for you. How much content will you have? if it's thousands of items then again native will offer the best performance. You can also perform certain tasks on background threads (my app did image compression and resizing before uploading the image, for example).
Otherwise - if you just want to get something out quick, go with phonegap.
*I speak as a developer who started out with Phonegap but went Native for performance reasons. Others may have had better experiences.
Comparing application build in native Objective-C with applications build with Webtool like PhoneGap, in terms of being fast, Objective-C apps always win, but in terms of building it fast with zero knowledge of Objective-C Web apps win.
If you have knowledge of Objective-C, in my opinion go with native Objective-C app, else do it with PhoneGap.
BTW, those functionality mentioned in your question can be done with both.

Programming for IPhone - Do you really need to learn Objective-c?

Looking on-line I saw that I can write most of the application in Ansi-C code or as a website and present it in a webView control.
Then besides some general knowledge about iOS and the API... Do I really need to learn Objective C?
You could use something like PhoneGap, which wraps an HTML-based application into a native launcher app. It may not be as powerful as what you can do with a pure native app, but on the other hand, your code will not only run on iOS.
PhoneGap does offer access to some of the phone's API (camera, notifications, accelerometer and so on) that you normally only get in native apps (it exposes them as JavaScript objects), so you can do more than you could in a regular HTML5 webapp, even without learning Objective-C.
Most people overlook the fact the iPhone has an extremely capable web browser. You can create very powerful web apps and therefore avoid having to learn objective C.
Safari on the iPhone has a bunch of great HTML5 features, including local sqlite stoage - so for example you could easily make a todo list app which could sync up with your server when there's a net connection.
You can even add home screen icons etc.. personally I'm astonished people don't write iPhone web apps more!
This is a super useful guide on how to do it:
http://building-iphone-apps.labs.oreilly.com/
You can use C# to write iPhone apps using MonoTouch, but it costs money. Then again, so does developing for the iPhone the normal way.
The other answers are correct in that you /can/ use other languages... you really don't want to. You are never going to create a pleasant to use, standard, and HIG-abiding application without learning Objective-C. Truly, though, there's no reason /not/ to learn something new. It's not particularly difficult (like, say, C++), and Cocoa is a well-designed API.
Somewhat related, I personally refuse to install all the PhoneGap/etc apps in the App Store as I find them of significantly less inherent quality (especially as compared to the rest of the apps on the device), and I would suspect many non-developers would have similar issues with them, if not so specific.
Unless your app is all web, or uses a framework such as PhoneGap you have to have some working knowledge of obj-C. It's actually not that bad. It's C with Smalltalk bolted onto it.
It's generally much simpler than C++.
if u want true native app that can take advantage of the latest features on the latest iOS release, Objective-C is da language you gotta learn.
Objective-C is a very powerful language, and there are a ton of great frameworks - you are doing yourself a HUGE disservice by not learning the language, and your app quality will suffer as a result.
You can write an entire iPhone app in C++ using a framework like libnui.

How do you sync a Core-Data application between a Mac and a iPhone?

Just wondering what code I would need to do this?
There's no CoreData for the iPhone (yet), so there's no way to use the same code in your iPhone and Mac app. You could write your own wrapper around sqlite that will run on both. The Omni group has an open source version of this (under a modified MIT license) which would probably be a good starting point.
In addition, there's no built in way to sync data, so you'll have to come up with a way to do that as well. Many apps run a server on the phone/mac and sync via that server. It generally requires that your phone is connected to the same wifi network as the mac.
Core Data does not exist on the iPhone, so you'll need to use something else for the iPhone portion at least. In fact, if you want to share a significant amount of code between the iPhone and Mac apps, you'll probably want to avoid Core Data altogether.