You're only a sophomore, so you have a long time to apply for OCS before graduation.
Wrong, you have a chance to apply and be accepted for BDCP well before graduation. Also, what do you want to do in the Navy? I assume you either want to be a NA or NFO since you're on this website. If that's the case, you can apply and be guaranteed a flight spot from day one with BDCP and get paid. You can't do that at the Academy. Yes, there are benifits to the Academy and I believe that there is a thread about that. You can read all about the benefits here.
However, the final decision is up to you and want you want to accomplish. I did BDCP and I'm tickled pink that I did and that I found out about the program. I wouldn't want to go to the Academy, personally. But it's all up to what you want. Good luck in making your decision and feel free to ask any more questions that will help you make that decision.