超とりあえず、現在地をシェアするiPhoneアプリをXcodeとDelphi XE5で作って比べてみた

超とりあえずですが、現在地をシェアするiPhoneアプリをXcodeとDelphi XE5で作って比べてみました。

目次

実際に作っている動画がこちら

Xcode で作ってみる

Delphi XE5 で作ってみる

ソースコード

動画の途中で出てきたコードです。
コピペ用においておくだけなので、多くを求めないでください・・

Xcode

[code lang=’cpp’] #import #import
#import

@interface ShareLocationViewController : UIViewController
{
IBOutlet MKMapView *myMapView;
CLLocationManager *myLocationManager;

IBOutlet UIButton *myShareButton;

}

– (IBAction)tappedShareButton:(id)sender;

– (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
myMapView.showsUserLocation = YES;

myLocationManager = [[CLLocationManager alloc] init];
myLocationManager.delegate = self;

myLocationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
myLocationManager.distanceFilter = 100.0;
[myLocationManager startUpdatingLocation];

}

#pragma mark – Location Manager
– (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
MKCoordinateRegion region = myMapView.region;
CLLocation *newLocation = [locations lastObject];
region.center.latitude = newLocation.coordinate.latitude;
region.center.longitude = newLocation.coordinate.longitude;
region.span.latitudeDelta = 0.01;
region.span.longitudeDelta = 0.01;
[myMapView setRegion:region animated:YES];
}

#pragma mark – UIButton
– (IBAction)tappedShareButton:(id)sender
{
SLComposeViewController *controller;
controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];

SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){
[controller dismissViewControllerAnimated:YES completion:nil];
};

controller.completionHandler = myBlock;

[controller setInitialText:@”現在地をシェアします!”];
[self presentViewController:controller animated:YES completion:nil];
}
[/code]

Delphi XE5

[code lang=’delphi’] , System.Sensors

procedure TForm1.LocationSensor1LocationChanged(Sender: TObject;
const OldLocation, NewLocation: TLocationCoord2D);
var
URLString: String;
begin
URLString := Format(
‘https://maps.google.com/maps?q=%s,%s&output=embed’,
[Format(‘%2.6f’, [NewLocation.Latitude]), Format(‘%2.6f’, [NewLocation.Longitude])]);
WebBrowser1.Navigate(URLString);
end;

ShowShareSheetAction1.TextMessage := WebBrowser1.URL;

[/code]

思う事

確かに Xcode による開発は、Apple 純正の開発環境でもあり、必ず最新機能を利用できるメリットがあります。

しかし、ストーリーボードに配置したコントロールを扱うための変数をヘッダーファイルに用意したり、それをバインドしたりする必要があるのは正直面倒に感じました。

対する Delphi XE5 による開発は、RAD と言うべく表示画面とコードの関係がスッキリと分かりますね。

まとめ

自分には、使い慣れていることを前提にしても開発効率は Delphi の方が良いと思いました。
また、今作ったコードが Android に転用できるのも企業として大きなアドバンテージです。

と言う事で、自分の iOS の開発環境は Delphi で変わらないでしょう(笑)

10年集客し続けられるサイトを、ワードプレスで自作する9つのポイント プレゼント

【最後まで読んでくれたあなたに】

あなたは、24時間365日、自分の代わりに集客し続けてくれるWebサイトを作りたい!と思ったことはありませんか?

私はこれまで500以上のWebサイトの構築と運営のご相談に乗ってきましたが、Webサイトを作ってもうまく集客できない人には、ある一つの特徴があります。

それは、「先を見越してサイトを構築していないこと」です。
Webサイトで集客するためには、構築ではなく「どう運用するか」が重要です。

しかし、重要なポイントを知らずにサイトを自分で構築したり、業者に頼んで作ってもらってしまうと、あとから全く集客に向いていないサイトになっていたということがよく起こります。

そこで今回、期間限定で
『10年集客し続けられるサイトをワードプレスで自作する9つのポイント』
について、過去に相談に乗ってきた具体的な失敗事例と成功事例を元にしてお伝えします。

・ワードプレスを使いこなせるコツを知りたい!
・自分にピッタリのサーバーを撰びたい!
・無料ブログとの違いを知りたい!
・あとで悔しくならない初期設定をしておきたい!
・プラグイン選びの方法を知っておきたい!
・SEO対策をワードプレスで行うポイントを知りたい!
・自分でデザインできる方法を知りたい!

という方は今すぐ無料でダウンロードしてください。

期間限定で、無料公開しています。

※登録後に表示される利用条件に沿ってご利用ください

コメントを残す