WindowsPhoneとAndroidの話

176 views
112 views

Published on

LTのやつ

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
176
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

WindowsPhoneとAndroidの話

  1. 1. WindowsPhone アプリをAndroidに 移植しようとした @ukayare
  2. 2. WindowsPhone
  3. 3. It is Very Exciting Device
  4. 4. But
  5. 5. The Problem is ... So a few!!
  6. 6. The Problem is ...
  7. 7. I want you to use my application!! I want Money!!
  8. 8. Android sharing is ... About 160 Times
  9. 9. So, let the android development
  10. 10. My WindowsPhone Application Dominion     selector
  11. 11. C# on Android(iPhone) Xamarin
  12. 12. Xamarin Advantage ● Creating Android Project by C# ○ Can use LINQ and lambda ○ Using delegate, your coding smart. ● XamarinStudio(IDE) is cool!! ● Can Use VisualStudio.(by pay plan)
  13. 13. Xamarin Disadvantage ● Free plan is so poor function. ● Pay Plan is so expensive
  14. 14. Xamarin... For the rich man's Product
  15. 15. Porting Convert
  16. 16. I think ...
  17. 17. Problem 1 Can't use default and named arguments. public void calc(){ sum(x: 3, y: 2, z: 1);//6 sum(x: 3, z: 1);//4 sum();//0 sum(z: 1);//1 } public int sum(int x = 0,int y = 0,int z = 0){ return x + y + z; }
  18. 18. Care of Using HashMap? public void calc(){ HashMap<String, int> map = new HashMap<String, int> map.putInt("x", 10); sum(map);//10 } public int sum(HashMap<String, int> map){ if(map == null) return 0; int x = map.put("x") == null ? 0 : map.put("x"); int y = map.put("y") == null ? 0 : map.put("y"); int z = map.put("z") == null ? 0 : map.put("z"); return x + y + z; }
  19. 19. Problem 2 Can't use Lambda and Predicate(LINQ). -List filtering- public class Point{ public x { get: set:} public y { get: set:} public Point(int x, int y){ this.x = x; this.y = y; } } public void hoge(){ var list = new List<Point>(); list.Add(new Point(1,2)) list.Add(new Point(-1,2)) list.Add(new Point(1,-2)) list.Where(point p => p.x > 0); }
  20. 20. Care of Using inner Interface? public class PointList extends ArrayList<Point>{ public PointList where(FilterInterface filter){ reutrn filter.filter(this); } public interface FilterInterface{ public PointList filter(PointList target); } }
  21. 21. implements public void hoge(){ PointList list = new PointList(); list.Add(new Point(1,2)); list.Add(new Point(-1,2)); list.Add(new Point(1,-2)); list.where(new PointList.FilterInterface(){ @Override public PointList filter(PointList target){ PointList flist = new PointList(); for(Point p : target) if(p.x > 0) flist.add(p); return flist; } }); }
  22. 22. Problem 3 VisualStudio is better than Eclipse or AndroidStudio
  23. 23. Care of Please Use Xamarin!!
  24. 24. The Last of ...
  25. 25. Lunch Time is Dominion Time!!
  26. 26. I have participated     wait for       

×