• Разработка приложений для iphone

    printf
    @printf
    Ем детей.
    Я бы рекомендовал Obj-C, конечно.
    — нативное приложение, элементы UI работают именно так, как ожидает пользователь;
    — нет лишних уровней абстракции, код работает быстрее (сравнивая с phonegap — значительно);
    — полный суперсет языка C, очень много доступного для повторного использования открытого кода;
    — Xcode IDE, в частности возможность отладки/профилирования как на эмуляторе, так и на устройстве;
    — OpenGL ES, можно делать быстрые трехмерные игрушки (в частности, портирован движок quake3, коммерческий Unreal Engine).
    Ответ написан
    Комментировать
  • Flash & ActionScript: с чего начать?

    barbuza
    @barbuza
    почитать Колин Мук — Actionscript 3.0 для Flash
    софт — Powerflasher FDT
    Ответ написан
    1 комментарий
  • На чём написан Хабр?

    xn__p2a
    @xn__p2a
    > На чём написан Хабр?

    Иногда мне кажется, что на коленке… (особый привет хабра-парсеру!)
    Ответ написан
    Комментировать
  • Получение опыта в программировании?

    crea7or
    @crea7or
    Если идей нет, то можно попробовать поучаствовать в каком-нибудь опенсорс проекте. Сорцы все на виду и учёба и польза.
    Ответ написан
    1 комментарий
  • Многоуровневая UITableView?

    @frantic
    Делал подобное.

    На входе миссив (NSArray), у каждого элемента есть уровень. Пробегал по массиву и создавал вьювы со сдвигом влево. Потом это все пихал в UITableViewCell.

    -(void) flateCommentsData:(NSArray *)_data withLevel:(NSInteger)level
    {
      NSEnumerator * dataEnum = [_data objectEnumerator];
      
      NSDictionary * commentData;
      
      while (commentData = [dataEnum nextObject])
      {
        SModelComment * commentModel = [[SModelComment alloc]init];
        
        [commentModel set:@"id" withValue:[commentData objectForKey:@"id"]];
        [commentModel set:@"text" withValue:[commentData objectForKey:@"text"]];
        [commentModel set:@"userId" withValue:[commentData objectForKey:@"userId"]];
        [commentModel setLevel:level];
        
        CGRect cellRect = CGRectMake(commentModel.level*5, 0, 320 - commentModel.level*5, 0);
        UIView * cellView = [[UIView alloc] initWithFrame: cellRect];
        
        //add avatar
        SModelUser * user = [SModelUserPeer loadObjectById:[commentModel get:@"userId"]];
        UIImageView * avatarView = [[UIImageView alloc] initWithImage: user.smallAvatar.image ];
        avatarView.frame = CGRectMake(5, 7, 35, 35);
        [cellView addSubview:avatarView];
        
        //add username
        UILabel * usernameLabel = [[UILabel alloc] initWithFrame:CGRectMake(45, 5, cellRect.size.width - 75, 20)];
        usernameLabel.font = [UIFont boldSystemFontOfSize:14.0];
        usernameLabel.text = [user get:@"fullName"];
        [cellView addSubview:usernameLabel];
            
        //add text
        CGRect cellTextRect = CGRectMake(45, 25, cellRect.size.width - 75, 0);
        UILabel * cellTextLabel = [[UILabel alloc] initWithFrame:cellTextRect];
        cellTextLabel.text = [commentModel get:@"text"];
        cellTextLabel.font = [UIFont systemFontOfSize:12.0];
        cellTextLabel.numberOfLines = 0;
        [cellTextLabel sizeToFit];
        cellTextLabel.backgroundColor = [UIColor whiteColor];
        [cellView addSubview:cellTextLabel];
        
        
        CGRect textFrame = cellTextLabel.frame;
        textFrame.size.height = textFrame.size.height + 10 + usernameLabel.frame.size.height
        ;
        textFrame.size.height = textFrame.size.height > 50 ? textFrame.size.height : 50;
    
        cellRect.size.height = textFrame.size.height;
        cellView.frame = cellRect;
            
        NSMutableDictionary * item = [[NSMutableDictionary alloc] initWithCapacity:2];
        [item setObject:cellView forKey:@"view"];
        [item setObject:commentModel forKey:@"model"];
        
        [commentsList addObject:item];
        
        if ([commentData objectForKey:@"childs"])
        {
          [self flateCommentsData:[commentData objectForKey:@"childs"] withLevel:level+1];
        }
      }
    }
    


    потом

    -(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
    	NSDictionary * item = [commentsList objectAtIndex:indexPath.row]; 
    	UIView * cellView   = [item objectForKey:@"view"];
    	SModelComment * commentModel = [item objectForKey:@"model"];
    	
    	NSString * CellIdentifier = [NSString stringWithFormat:@"comment_cell_%d", [commentModel get:@"id"]];
    	
    	UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    	
        if (cell == nil) {
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
        }
    	
    	cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    	[cell.contentView addSubview:cellView];
    
        return cell;	
    }
    
    Ответ написан
    4 комментария
  • Как не работать сверхурочно?

    ZyL
    @ZyL
    В рабочее время заниматься своими проектами.
    Ответ написан
    1 комментарий
  • Какую книгу лучше взять для изучения C#?

    @Christmas
    Очень понравилась C# 4.0 in a Nutshell, Joseph Albahari & Ben Albahari
    Содержательно, лаконично и по делу.
    Ответ написан
    1 комментарий
  • Какую книгу лучше взять для изучения C#?

    Skiminok
    @Skiminok
    Лучший труд с полным введением в язык и его тонкости плюс использование написан Э. Троелсеном. На русском это «Язык программирования С# 2008 и платформа .NET 3.5».

    После изучения Троелсена в обязательном порядке читается культовая книга дотнетчиков: Джеффри Рихтер, «CLR via C#».

    А дальше уже надо ориентироваться по конкретным технологиям. Если интересует ASP.NET, то это Дино Эспозито, если WPF — Чарльз Петцольд. И так далее.
    Ответ написан
    3 комментария
  • Какую книгу лучше взять для изучения C#?

    csfmeridian
    @csfmeridian
    Джеффри Рихтер — CLR via C#. Программирование на платформе Microsoft .NET Framework 2.0 на языке C#.
    Ответ написан
    2 комментария