21
Девятая независимая научно-практическая конференция «Разработка ПО 2013» 23 - 25 октября, Москва Гордиенков Андрей Принцип наименьшего удивления в разработке API приложения

Secr презентация гардиенков

Embed Size (px)

DESCRIPTION

 

Citation preview

  • 1. - 2013 23 - 25 , API

2. 3 : http://softblog.violet-tape.net , , 3. API ? API API API API . . 4. API -. . var api = new AlfabankAPI(); api.Connect("k000000", "qwerty"); Console.WriteLine("Balance: {0}", api.GetBalance()); var var var vardate1 = new DateTime(2013, 9, 1); date2 = DateTime.Now; account = "40700000000000000000"; operations = api.GetMovementOnAccount(account, date1, date2); 5. : . . private void tralala() { var contextMenu = new ContextMenu(); contextMenu.Items.Add("MyNewItem"); gridColumn.ContextMenu = contextMenu; } : e.MenuInfo.View.RowCellMenuCustomizations 6. : : 7. 8. 9. API 10. ScrollBox, ? void ShiftDown(float distance) void ShiftDownRelative(float distance): ShiftDown N ShiftDownRelative N 11. : void ShiftDown(float distance) void ShiftDownFromStart(float distance, Measure measure): scrollBox.ShiftDown(400); scrollBox.ShiftDownFromStart(400); scrollBox.ShiftDownFromStart(25, Measure.Percent); 12. UI . var visualState = new VisualState("StateName"); var transition = new VisualTransition(); var keySetter = new KeySetter("Background", Colors.Red); transition.PropertySetters.Add(keySetter); visualState.Transitions.Add(transition); Fluent Interface new VisualStateBuilder("StateName") .WithTransition() .WithProperty("Background", Colors.Red) .Build(); 13. var storyboard = new Storyboard(); var propertyChange = new PropertyChange(1d, EasingMode.Linear, 500); var propertyChangeSequence = new PropertyChangeSequence("Top", new []{propertyChange}); var uiAnimation = new UIAnimation(propertyChangeSequence); storyboard.Add(uiAnimation, new []{border}); ( ) border.GlideDown(500); 14. map.controls .add('trafficControl') .add('searchControl') .add('zoomControl') .add('typeSelector') .add('geolocationControl') .add('fullscreenControl') // // // - // // // map.controls.add('default'); 15. DSL, FluentInterface 16. . : C# RemoveAsync TrashAsync ObjectiveC removeItemAtPath trashItemAtPath Java delete 17. , , , , 18. , , API Eating your own dog food 19. .. API , ! 20. 21. [email protected] skype violet-tape