yeah @ 1080p of gaming, i think after about 1.5years you may have to lower some setting from ultra to high but other wise yes. it will last you a good while.
there is honestly really no exact way of determining the life of a graphics card but it is by far faster than a 950 and the 970 is to much of a leap in cost to justify buying it atm, when you can get a 960 for as low as 179$-199$ it a very good value for the money.
next up would be an ATI r9 390x for 279$ and a 970 for 289$
when the time comes that you may need more power (if at all) you can always overclock a little, i recommend getting a higher end card for 199$ such as an MSI TF OC or EVGA OC FTW edition. that come stock with higher clocks and basicly the cream of the crop selected 960 chips.
in the end, it is all your money but i rarely reach for the top of the line chips such as 970/r9 390x or 980ti.
they fade out to fast and cost too much for the short time that they are on top of the leader board.
i dont have a 4k screen, don't plan on getting one. but for 1080p 960 will be perfect. and if you upgrade in a year or two, you don't feel like you just threw 300$ out the window either. cause as you said there is always something new around the corner.